Class CfnSamplingRulePropsMixin

java.lang.Object
software.amazon.jsii.JsiiObject
software.amazon.awscdk.Mixin
software.amazon.awscdk.cfnpropertymixins.services.xray.CfnSamplingRulePropsMixin
All Implemented Interfaces:
software.amazon.jsii.JsiiSerializable, software.constructs.IMixin

@Generated(value="jsii-pacmak/1.127.0 (build 2117ad5)", date="2026-03-11T13:20:06.391Z") @Stability(Stable) public class CfnSamplingRulePropsMixin extends Mixin implements software.constructs.IMixin
Use the AWS::XRay::SamplingRule resource to specify a sampling rule, which controls sampling behavior for instrumented applications.

Include a SamplingRule entity to create or update a sampling rule.

SamplingRule.Version can only be set when creating a sampling rule. Updating the version will cause the update to fail.

Services retrieve rules with GetSamplingRules , and evaluate each rule in ascending order of priority for each request. If a rule matches, the service records a trace, borrowing it from the reservoir size. After 10 seconds, the service reports back to X-Ray with GetSamplingTargets to get updated versions of each in-use rule. The updated rule contains a trace quota that the service can use instead of borrowing from the reservoir.

Example:

 // The code below shows an example of how to instantiate this type.
 // The values are placeholders you should change.
 import software.amazon.awscdk.cfnpropertymixins.services.xray.*;
 import software.amazon.awscdk.*;
 IMergeStrategy mergeStrategy;
 CfnSamplingRulePropsMixin cfnSamplingRulePropsMixin = CfnSamplingRulePropsMixin.Builder.create(CfnSamplingRuleMixinProps.builder()
         .ruleName("ruleName")
         .samplingRule(SamplingRuleProperty.builder()
                 .attributes(Map.of(
                         "attributesKey", "attributes"))
                 .fixedRate(123)
                 .host("host")
                 .httpMethod("httpMethod")
                 .priority(123)
                 .reservoirSize(123)
                 .resourceArn("resourceArn")
                 .ruleArn("ruleArn")
                 .ruleName("ruleName")
                 .serviceName("serviceName")
                 .serviceType("serviceType")
                 .urlPath("urlPath")
                 .version(123)
                 .build())
         .samplingRuleRecord(SamplingRuleRecordProperty.builder()
                 .createdAt("createdAt")
                 .modifiedAt("modifiedAt")
                 .samplingRule(SamplingRuleProperty.builder()
                         .attributes(Map.of(
                                 "attributesKey", "attributes"))
                         .fixedRate(123)
                         .host("host")
                         .httpMethod("httpMethod")
                         .priority(123)
                         .reservoirSize(123)
                         .resourceArn("resourceArn")
                         .ruleArn("ruleArn")
                         .ruleName("ruleName")
                         .serviceName("serviceName")
                         .serviceType("serviceType")
                         .urlPath("urlPath")
                         .version(123)
                         .build())
                 .build())
         .samplingRuleUpdate(SamplingRuleUpdateProperty.builder()
                 .attributes(Map.of(
                         "attributesKey", "attributes"))
                 .fixedRate(123)
                 .host("host")
                 .httpMethod("httpMethod")
                 .priority(123)
                 .reservoirSize(123)
                 .resourceArn("resourceArn")
                 .ruleArn("ruleArn")
                 .ruleName("ruleName")
                 .serviceName("serviceName")
                 .serviceType("serviceType")
                 .urlPath("urlPath")
                 .build())
         .tags(List.of(CfnTag.builder()
                 .key("key")
                 .value("value")
                 .build()))
         .build())
 .strategy(mergeStrategy)
 .build();
 

See Also:
  • Field Details

    • CFN_PROPERTY_KEYS

      @Stability(Stable) protected static final List<String> CFN_PROPERTY_KEYS
  • Constructor Details

    • CfnSamplingRulePropsMixin

      protected CfnSamplingRulePropsMixin(software.amazon.jsii.JsiiObjectRef objRef)
    • CfnSamplingRulePropsMixin

      protected CfnSamplingRulePropsMixin(software.amazon.jsii.JsiiObject.InitializationMode initializationMode)
    • CfnSamplingRulePropsMixin

      @Stability(Stable) public CfnSamplingRulePropsMixin(@NotNull CfnSamplingRuleMixinProps props, @Nullable CfnPropertyMixinOptions options)
      Create a mixin to apply properties to AWS::XRay::SamplingRule.

      Parameters:
      props - L1 properties to apply. This parameter is required.
      options - Mixin options.
    • CfnSamplingRulePropsMixin

      @Stability(Stable) public CfnSamplingRulePropsMixin(@NotNull CfnSamplingRuleMixinProps props)
      Create a mixin to apply properties to AWS::XRay::SamplingRule.

      Parameters:
      props - L1 properties to apply. This parameter is required.
  • Method Details

    • applyTo

      @Stability(Stable) public void applyTo(@NotNull software.constructs.IConstruct construct)
      Apply the mixin properties to the construct.

      Specified by:
      applyTo in interface software.constructs.IMixin
      Specified by:
      applyTo in class Mixin
      Parameters:
      construct - This parameter is required.
    • supports

      @Stability(Stable) @NotNull public Boolean supports(@NotNull software.constructs.IConstruct construct)
      Check if this mixin supports the given construct.

      Specified by:
      supports in interface software.constructs.IMixin
      Overrides:
      supports in class Mixin
      Parameters:
      construct - This parameter is required.
    • getProps

      @Stability(Stable) @NotNull protected CfnSamplingRuleMixinProps getProps()
    • getStrategy

      @Stability(Stable) @NotNull protected IMergeStrategy getStrategy()