CreateSamplingRule - AWS X-Ray (original) (raw)
Creates a rule to control sampling behavior for instrumented applications. 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.
Request Syntax
POST /CreateSamplingRule HTTP/1.1
Content-type: application/json
{
"SamplingRule": {
"Attributes": {
"string" : "string"
},
"FixedRate": number,
"Host": "string",
"HTTPMethod": "string",
"Priority": number,
"ReservoirSize": number,
"ResourceARN": "string",
"RuleARN": "string",
"RuleName": "string",
"ServiceName": "string",
"ServiceType": "string",
"URLPath": "string",
"Version": number
},
"Tags": [
{
"Key": "string",
"Value": "string"
}
]
}
URI Request Parameters
The request does not use any URI parameters.
Request Body
The request accepts the following data in JSON format.
The rule definition.
Type: SamplingRule object
Required: Yes
A map that contains one or more tag keys and tag values to attach to an X-Ray sampling rule. For more information about ways to use tags, see Tagging AWS resources in the AWS General Reference.
The following restrictions apply to tags:
- Maximum number of user-applied tags per resource: 50
- Maximum tag key length: 128 Unicode characters
- Maximum tag value length: 256 Unicode characters
- Valid values for key and value: a-z, A-Z, 0-9, space, and the following characters: _ . : / = + - and @
- Tag keys and values are case sensitive.
- Don't use
aws:
as a prefix for keys; it's reserved for AWS use.
Type: Array of Tag objects
Array Members: Minimum number of 0 items. Maximum number of 200 items.
Required: No
Response Syntax
HTTP/1.1 200
Content-type: application/json
{
"SamplingRuleRecord": {
"CreatedAt": number,
"ModifiedAt": number,
"SamplingRule": {
"Attributes": {
"string" : "string"
},
"FixedRate": number,
"Host": "string",
"HTTPMethod": "string",
"Priority": number,
"ReservoirSize": number,
"ResourceARN": "string",
"RuleARN": "string",
"RuleName": "string",
"ServiceName": "string",
"ServiceType": "string",
"URLPath": "string",
"Version": number
}
}
}
Response Elements
If the action is successful, the service sends back an HTTP 200 response.
The following data is returned in JSON format by the service.
Errors
For information about the errors that are common to all actions, see Common Errors.
InvalidRequestException
The request is missing required parameters or has invalid parameters.
HTTP Status Code: 400
RuleLimitExceededException
You have reached the maximum number of sampling rules.
HTTP Status Code: 400
ThrottledException
The request exceeds the maximum number of requests per second.
HTTP Status Code: 429
See Also
For more information about using this API in one of the language-specific AWS SDKs, see the following: