import * as pulumi from "@pulumi/pulumi"; /** * > This resource requires the API token scopes **Read settings** (`settings.read`) and **Write settings** (`settings.write`) * * ## Dynatrace Documentation * * - Trace sampling - https://docs.dynatrace.com/docs/shortlink/url-sampling * * - Settings API - https://www.dynatrace.com/support/help/dynatrace-api/environment-api/settings (schemaId: `builtin:rpc-based-sampling`) * * ## Resource Example Usage * * ```typescript * import * as pulumi from "@pulumi/pulumi"; * import * as dynatrace from "@pulumiverse/dynatrace"; * * const _name_ = new dynatrace.RpcBasedSampling("#name#", { * enabled: false, * endpointName: "#name#-endpoint", * endpointNameComparisonType: "DOES_NOT_END_WITH", * ignore: true, * remoteOperationName: "#name#-operation", * remoteOperationNameComparisonType: "CONTAINS", * remoteServiceName: "#name#-service", * remoteServiceNameComparisonType: "STARTS_WITH", * scope: "environment", * wireProtocolType: "8", * }); * ``` */ export declare class RpcBasedSampling extends pulumi.CustomResource { /** * Get an existing RpcBasedSampling resource's state with the given name, ID, and optional extra * properties used to qualify the lookup. * * @param name The _unique_ name of the resulting resource. * @param id The _unique_ provider ID of the resource to lookup. * @param state Any extra arguments used during the lookup. * @param opts Optional settings to control the behavior of the CustomResource. */ static get(name: string, id: pulumi.Input, state?: RpcBasedSamplingState, opts?: pulumi.CustomResourceOptions): RpcBasedSampling; /** * Returns true if the given object is an instance of RpcBasedSampling. This is designed to work even * when multiple copies of the Pulumi SDK have been loaded into the same process. */ static isInstance(obj: any): obj is RpcBasedSampling; /** * This setting is enabled (`true`) or disabled (`false`) */ readonly enabled: pulumi.Output; /** * Specify the RPC endpoint name. If the endpoint name is empty, either remote operation name or remote service name must be specified that can be used for RPC matching. */ readonly endpointName: pulumi.Output; /** * Possible Values: `CONTAINS`, `DOES_NOT_CONTAIN`, `DOES_NOT_END_WITH`, `DOES_NOT_EQUAL`, `DOES_NOT_START_WITH`, `ENDS_WITH`, `EQUALS`, `STARTS_WITH` */ readonly endpointNameComparisonType: pulumi.Output; /** * Possible Values: `0`, `1`, `2`, `3`, `4`, `5`, `6`, `8`, `9`, `10`, `11`, `12`, `13`, `14` * * - `0`: Increase capturing 128 times * * - `1`: Increase capturing 64 times * * - `2`: Increase capturing 32 times * * - `3`: Increase capturing 16 times * * - `4`: Increase capturing 8 times * * - `5`: Increase capturing 4 times * * - `6`: Increase capturing 2 times * * - `8`: Reduce capturing by factor 2 * * - `9`: Reduce capturing by factor 4 * * - `10`: Reduce capturing by factor 8 * * - `11`: Reduce capturing by factor 16 * * - `12`: Reduce capturing by factor 32 * * - `13`: Reduce capturing by factor 64 * * - `14`: Reduce capturing by factor 128 */ readonly factor: pulumi.Output; /** * No Traces will be captured for matching RPC requests. This applies always, even if Adaptive Traffic Management is inactive. */ readonly ignore: pulumi.Output; /** * Because this resource allows for ordering you may specify the ID of the resource instance that comes before this instance regarding order. If not specified when creating the setting will be added to the end of the list. If not specified during update the order will remain untouched */ readonly insertAfter: pulumi.Output; /** * Specify the RPC operation name. If the remote operation name is empty, either remote service name or endpoint name must be specified that can be used for RPC matching. */ readonly remoteOperationName: pulumi.Output; /** * Possible Values: `CONTAINS`, `DOES_NOT_CONTAIN`, `DOES_NOT_END_WITH`, `DOES_NOT_EQUAL`, `DOES_NOT_START_WITH`, `ENDS_WITH`, `EQUALS`, `STARTS_WITH` */ readonly remoteOperationNameComparisonType: pulumi.Output; /** * Specify the RPC remote service name. If the remote service name is empty, either remote operation name or endpoint name must be specified that can be used for RPC matching. */ readonly remoteServiceName: pulumi.Output; /** * Possible Values: `CONTAINS`, `DOES_NOT_CONTAIN`, `DOES_NOT_END_WITH`, `DOES_NOT_EQUAL`, `DOES_NOT_START_WITH`, `ENDS_WITH`, `EQUALS`, `STARTS_WITH` */ readonly remoteServiceNameComparisonType: pulumi.Output; /** * The scope of this setting (PROCESS_GROUP_INSTANCE, PROCESS_GROUP, CLOUD_APPLICATION, CLOUD_APPLICATION_NAMESPACE, KUBERNETES_CLUSTER, HOST_GROUP). Omit this property if you want to cover the whole environment. */ readonly scope: pulumi.Output; /** * Possible Values: `1`, `2`, `3`, `4`, `5`, `6`, `7`, `8`, `9`, `10` * * - `1`: ADK * * - `2`: DOTNET_REMOTING * * - `3`: DOTNET_REMOTING_TCP * * - `4`: DOTNET_REMOTING_HTTP * * - `5`: DOTNET_REMOTING_XMLRPC * * - `6`: GRPC * * - `7`: GRPC_BIDI * * - `8`: GRPC_UNARY * * - `9`: GRPC_SERVERSTREAM * * - `10`: GRPC_CLIENTSTREAM */ readonly wireProtocolType: pulumi.Output; /** * Create a RpcBasedSampling resource with the given unique name, arguments, and options. * * @param name The _unique_ name of the resource. * @param args The arguments to use to populate this resource's properties. * @param opts A bag of options that control this resource's behavior. */ constructor(name: string, args: RpcBasedSamplingArgs, opts?: pulumi.CustomResourceOptions); } /** * Input properties used for looking up and filtering RpcBasedSampling resources. */ export interface RpcBasedSamplingState { /** * This setting is enabled (`true`) or disabled (`false`) */ enabled?: pulumi.Input; /** * Specify the RPC endpoint name. If the endpoint name is empty, either remote operation name or remote service name must be specified that can be used for RPC matching. */ endpointName?: pulumi.Input; /** * Possible Values: `CONTAINS`, `DOES_NOT_CONTAIN`, `DOES_NOT_END_WITH`, `DOES_NOT_EQUAL`, `DOES_NOT_START_WITH`, `ENDS_WITH`, `EQUALS`, `STARTS_WITH` */ endpointNameComparisonType?: pulumi.Input; /** * Possible Values: `0`, `1`, `2`, `3`, `4`, `5`, `6`, `8`, `9`, `10`, `11`, `12`, `13`, `14` * * - `0`: Increase capturing 128 times * * - `1`: Increase capturing 64 times * * - `2`: Increase capturing 32 times * * - `3`: Increase capturing 16 times * * - `4`: Increase capturing 8 times * * - `5`: Increase capturing 4 times * * - `6`: Increase capturing 2 times * * - `8`: Reduce capturing by factor 2 * * - `9`: Reduce capturing by factor 4 * * - `10`: Reduce capturing by factor 8 * * - `11`: Reduce capturing by factor 16 * * - `12`: Reduce capturing by factor 32 * * - `13`: Reduce capturing by factor 64 * * - `14`: Reduce capturing by factor 128 */ factor?: pulumi.Input; /** * No Traces will be captured for matching RPC requests. This applies always, even if Adaptive Traffic Management is inactive. */ ignore?: pulumi.Input; /** * Because this resource allows for ordering you may specify the ID of the resource instance that comes before this instance regarding order. If not specified when creating the setting will be added to the end of the list. If not specified during update the order will remain untouched */ insertAfter?: pulumi.Input; /** * Specify the RPC operation name. If the remote operation name is empty, either remote service name or endpoint name must be specified that can be used for RPC matching. */ remoteOperationName?: pulumi.Input; /** * Possible Values: `CONTAINS`, `DOES_NOT_CONTAIN`, `DOES_NOT_END_WITH`, `DOES_NOT_EQUAL`, `DOES_NOT_START_WITH`, `ENDS_WITH`, `EQUALS`, `STARTS_WITH` */ remoteOperationNameComparisonType?: pulumi.Input; /** * Specify the RPC remote service name. If the remote service name is empty, either remote operation name or endpoint name must be specified that can be used for RPC matching. */ remoteServiceName?: pulumi.Input; /** * Possible Values: `CONTAINS`, `DOES_NOT_CONTAIN`, `DOES_NOT_END_WITH`, `DOES_NOT_EQUAL`, `DOES_NOT_START_WITH`, `ENDS_WITH`, `EQUALS`, `STARTS_WITH` */ remoteServiceNameComparisonType?: pulumi.Input; /** * The scope of this setting (PROCESS_GROUP_INSTANCE, PROCESS_GROUP, CLOUD_APPLICATION, CLOUD_APPLICATION_NAMESPACE, KUBERNETES_CLUSTER, HOST_GROUP). Omit this property if you want to cover the whole environment. */ scope?: pulumi.Input; /** * Possible Values: `1`, `2`, `3`, `4`, `5`, `6`, `7`, `8`, `9`, `10` * * - `1`: ADK * * - `2`: DOTNET_REMOTING * * - `3`: DOTNET_REMOTING_TCP * * - `4`: DOTNET_REMOTING_HTTP * * - `5`: DOTNET_REMOTING_XMLRPC * * - `6`: GRPC * * - `7`: GRPC_BIDI * * - `8`: GRPC_UNARY * * - `9`: GRPC_SERVERSTREAM * * - `10`: GRPC_CLIENTSTREAM */ wireProtocolType?: pulumi.Input; } /** * The set of arguments for constructing a RpcBasedSampling resource. */ export interface RpcBasedSamplingArgs { /** * This setting is enabled (`true`) or disabled (`false`) */ enabled: pulumi.Input; /** * Specify the RPC endpoint name. If the endpoint name is empty, either remote operation name or remote service name must be specified that can be used for RPC matching. */ endpointName?: pulumi.Input; /** * Possible Values: `CONTAINS`, `DOES_NOT_CONTAIN`, `DOES_NOT_END_WITH`, `DOES_NOT_EQUAL`, `DOES_NOT_START_WITH`, `ENDS_WITH`, `EQUALS`, `STARTS_WITH` */ endpointNameComparisonType: pulumi.Input; /** * Possible Values: `0`, `1`, `2`, `3`, `4`, `5`, `6`, `8`, `9`, `10`, `11`, `12`, `13`, `14` * * - `0`: Increase capturing 128 times * * - `1`: Increase capturing 64 times * * - `2`: Increase capturing 32 times * * - `3`: Increase capturing 16 times * * - `4`: Increase capturing 8 times * * - `5`: Increase capturing 4 times * * - `6`: Increase capturing 2 times * * - `8`: Reduce capturing by factor 2 * * - `9`: Reduce capturing by factor 4 * * - `10`: Reduce capturing by factor 8 * * - `11`: Reduce capturing by factor 16 * * - `12`: Reduce capturing by factor 32 * * - `13`: Reduce capturing by factor 64 * * - `14`: Reduce capturing by factor 128 */ factor?: pulumi.Input; /** * No Traces will be captured for matching RPC requests. This applies always, even if Adaptive Traffic Management is inactive. */ ignore: pulumi.Input; /** * Because this resource allows for ordering you may specify the ID of the resource instance that comes before this instance regarding order. If not specified when creating the setting will be added to the end of the list. If not specified during update the order will remain untouched */ insertAfter?: pulumi.Input; /** * Specify the RPC operation name. If the remote operation name is empty, either remote service name or endpoint name must be specified that can be used for RPC matching. */ remoteOperationName?: pulumi.Input; /** * Possible Values: `CONTAINS`, `DOES_NOT_CONTAIN`, `DOES_NOT_END_WITH`, `DOES_NOT_EQUAL`, `DOES_NOT_START_WITH`, `ENDS_WITH`, `EQUALS`, `STARTS_WITH` */ remoteOperationNameComparisonType: pulumi.Input; /** * Specify the RPC remote service name. If the remote service name is empty, either remote operation name or endpoint name must be specified that can be used for RPC matching. */ remoteServiceName?: pulumi.Input; /** * Possible Values: `CONTAINS`, `DOES_NOT_CONTAIN`, `DOES_NOT_END_WITH`, `DOES_NOT_EQUAL`, `DOES_NOT_START_WITH`, `ENDS_WITH`, `EQUALS`, `STARTS_WITH` */ remoteServiceNameComparisonType: pulumi.Input; /** * The scope of this setting (PROCESS_GROUP_INSTANCE, PROCESS_GROUP, CLOUD_APPLICATION, CLOUD_APPLICATION_NAMESPACE, KUBERNETES_CLUSTER, HOST_GROUP). Omit this property if you want to cover the whole environment. */ scope?: pulumi.Input; /** * Possible Values: `1`, `2`, `3`, `4`, `5`, `6`, `7`, `8`, `9`, `10` * * - `1`: ADK * * - `2`: DOTNET_REMOTING * * - `3`: DOTNET_REMOTING_TCP * * - `4`: DOTNET_REMOTING_HTTP * * - `5`: DOTNET_REMOTING_XMLRPC * * - `6`: GRPC * * - `7`: GRPC_BIDI * * - `8`: GRPC_UNARY * * - `9`: GRPC_SERVERSTREAM * * - `10`: GRPC_CLIENTSTREAM */ wireProtocolType: pulumi.Input; }