Data ingestion control for tracers
Control data ingestion from Instana tracers to optimize costs and focus on relevant traces. You can reduce ingestion volume, minimize noise, and retain only the traces that matter while maintaining visibility into key workflows.
For a high-level overview of ingestion optimization across Instana, see Optimize data ingest in Instana. For a comparison of tracer capabilities, see Tracer features comparison matrix.
What ingestion control means for tracing
Tracing ingestion control helps you reduce low-value trace data while keeping the traces that are most useful for troubleshooting and performance analysis. Depending on your tracer and version, you can suppress selected endpoints, filter spans, limit stack trace capture, or disable selected instrumentation.
Available ingestion-control methods
Use the following methods to control trace data ingestion, depending on your requirements:
- Ignore endpoints: Suppress low-value operations from tracing.
- Filter spans by attributes: Exclude spans based on attributes, such as URLs, methods, status codes, headers, query parameters, SQL statements, or error messages.
- Limit stack trace capture: Control the depth of stack traces to reduce noise and improve performance.
- Disable selected instrumentation: Turn off specific instrumentation to reduce overhead and noise.
- Change host agent mode: Switch the host agent to Infrastructure mode to disable all tracers on the host.
- Suppress tracing programmatically: Use code-level controls to suppress tracing for specific operations or contexts.
Feature support is not uniform across all tracers. Always verify tracer support, version requirements, and configuration syntax before implementation. To compare feature availability across tracers, see Tracer features comparison matrix.
Ignore endpoints
Instana visualizes service interactions as endpoints. Use endpoint filtering to suppress low-value operations from tracing. This method is useful when you want to exclude specific commands, actions, or operations that generate noise but do not provide useful value.
Support for endpoint filtering depends on the tracer and, in some cases, the package or framework. For configuration details, see the documentation for your tracer.
Filter spans by attributes
Use span filtering when you want to exclude spans based on attributes, such as URLs, methods, status codes, headers, query parameters, SQL statements, or error messages.
This method is useful when you want more precise control than endpoint filtering provides. Support varies by tracer. For tracer-specific details, see the following pages:
Limit stack trace capture
Use stack trace controls when you want to reduce payload size and overhead from stack traces while keeping stack traces for failed calls.
Depending on the tracer, you might be able to capture stack traces only for errors, limit stack trace length, or disable stack trace capture for selected spans. Support and syntax vary by tracer and version. For example, some tracers support the unified global configuration, while others use tracer-specific configuration.
For tracer-specific details, see the following pages:
Disable selected instrumentation
Use this method when you want to remove tracing for selected technologies, libraries, or processes. This approach can reduce ingestion significantly when a specific integration generates spans that you do not need.
Disable tracing by technology
Use this option when you want to disable tracing for specific technologies, such as Redis, DynamoDB, or Logging.
For more information, see Disabling instrumentation plugins.
Disable tracing by library
Use this option when you want to disable specific instrumentation libraries, such as selected Couchbase integrations, to prevent span generation from those sources.
For more information, see Disabling instrumentation plugins.
Disable automatic trace instrumentation
Use this option when you want to disable tracing for a specific process by using process command-line options or environment variables.
For more information, see Java tracer configuration.
If you want to reduce monitoring at the host level, see Ignoring processes.
Change host agent mode
Switch to Infrastructure mode to disable all tracers and help optimize data ingestion. For more information, see Changing agent modes.
Suppress tracing programmatically
Use programmatic suppression when you want an application to decide whether downstream calls are traced. You can use the X-INSTANA-S header to suppress selected traces.
This configuration enables fine-grained control over which calls are captured, though it currently requires programmatic implementation.