Sampling Rules
Control how different traces in your service are sampled using remote sampling rules
When initializing Aspecto SDK, you can pass the samplingRatio option to control the general sampling rate of our client. But sometimes you'd want more sampling control only over specific trace. That's where sampling rules come in handy.
​Video Walkthrough​

Create Sample Rules

Go to the sampling rules page on Aspecto website, and click on the "New Rule" button. You'd be presented with the rule creation dialog:
In the above example, we are creating a rule to sample only 10% of health-check requests where the service name is wikipedia-serviceand the environment starts with prod. Setting a rule matcher for Service Name and Environment is mandatory. You can then choose to create extra conditions for your rules. Possible matchers for the extra conditions are:
  • HTTP Request Path (i.e. /api/users/5ffc067eb3fe9c9520611f34)
  • HTTP Full URL (i.e.
  • HTTP Method (i.e. GET, POST, etc.)
  • HTTP Host (i.e.
  • User Agent (i.e. PostmanRuntime/7.2 )
  • Queue/Topic Name (Queue name for SQS, Topic name for Kafka, etc.)

Important Notes

  • All rule conditions must be fulfilled for a rule to apply.
  • Rules are matched only against the entry point of a flow but affect the sampling of the entire flow. That means that if I set a rule where HTTP Request Path equals "/user" , and my flow starts with a request to an endpoint called /account , which internally calls the /user endpoint, the rule will not apply, even though the user endpoint was involved.
  • String-based rules are case insensitive (i.e. "HELLO" contains "he" will match)
  • SDK clients are updated in real-time and changes are effective immediately, so be careful!
  • Rules are run by their priority where 1 is the top priority. Once a rule matches a flow, no other rules will be applied to the same flow.e
  • If non of the rules match, the default sampling rate will be used (samplingRate option or 100% if none provided).
  • Sampling rules are ignored when running in local mode.
  • Sample Rate can be any valid floating-point number in the range [0.0, 100.0].
Last modified 18d ago