Configure the Splunk OpenTelemetry Lambda layer 🔗
You can configure the Splunk OpenTelemetry Lambda layer to suit most of your instrumentation needs. In most cases, modifying the basic configuration is enough to get started. See Configure the Splunk OpenTelemetry Lambda layer.
You can modify the following settings to fully configure the Lambda layer, including options for activating new features that are unique to the Splunk OpenTelemetry Lambda layer.
General settings 🔗
The following settings activate the Lambda layer to send data to Splunk Observability Cloud:
Environment variable |
Description |
---|---|
|
The name of your organization’s realm. If you don’t indicate a realm, you must define custom endpoints for trace data and metric data. See Exporters configuration and Metrics configuration. |
|
A Splunk authentication token that lets exporters send data directly to Splunk Observability Cloud. Required when the |
Trace configuration 🔗
The following settings control tracing limits and attributes:
Environment variable |
Description |
---|---|
|
Name of the service or application you’re instrumenting. Takes precedence over the service name defined in |
|
Comma-separated list of resource attributes added to every reported span. For example, you can define the name of the deployment environment of your function by setting the variable to |
|
Maximum number of attributes per span. Default is unlimited. |
|
Maximum number of events per span. Default is unlimited. |
|
Maximum number of links per span. Default is |
|
Maximum length of strings for attribute values. Values larger than the limit are truncated. Default is |
Exporters configuration 🔗
The following settings control trace exporters and their endpoints:
Environment variable |
Description |
---|---|
|
Trace exporter to use. You can set multiple comma-separated values. Possible values are |
|
The OTLP endpoint. This defaults to the collector running on localhost, |
|
The endpoint for the Jaeger exporter. When you set a value for the |
Note
Setting the exporter and the endpoint URL isn’t required in most cases. By default, the layer sends telemetry directly to a Collector run in the Lambda layer which sends the data to Splunk Observability Cloud ingest endpoints.
Propagators configuration 🔗
The following settings control trace propagation:
Environment variable |
Description |
---|---|
|
Comma-separated list of propagators you want to use. Default is |
Metrics configuration 🔗
The following settings control the sending of AWS Lambda metric data to Splunk Observability Cloud:
Environment variable |
Description |
---|---|
|
Endpoint for metric data ingestion. When you set a value for the |
|
Specifies the strategy used to send data points. Use |
|
Specifies how often the layer sends data points to Splunk Observability Cloud, in seconds. Default value is |
|
Timeout for sending data points to Splunk Observability Cloud, in seconds. Default value is |
|
Activates verbose logging for metric data collection. AWS CloudWatch stores the logs as log groups associated with the Lambda function. Default is |
|
Activates detailed logs of HTTP calls to Splunk Observability Cloud. Default is |
For more information, see AWS Lambda metrics and dimensions for Splunk Observability Cloud.
Server trace information 🔗
To connect Real User Monitoring (RUM) requests from mobile and web applications with serverless trace data, the Splunk OpenTelemetry Lambda layer adds the following response headers to HTTP responses:
Access-Control-Expose-Headers: Server-Timing
Server-Timing: traceparent;desc="00-<serverTraceId>-<serverSpanId>-01"
The Server-Timing
header contains the traceId
and spanId
parameters in traceparent
format. For more information, see the Server-Timing and traceparent documentation on the W3C website.
Other settings 🔗
Environment variable |
Description |
---|---|
|
Timeout for buffering spans, in milliseconds. The default value is |
|
Level for debug logging. Default is |
|
Set to |
|
Set to |
|
Set to |
|
Comma-separated list of Python instrumentations you want to deactivate. For a list of automatically loaded instrumentations, see the requirements list in the OpenTelemetry repository on GitHub: https://github.com/open-telemetry/opentelemetry-lambda/blob/main/python/src/otel/otel_sdk/nodeps-requirements.txt |
Caution
Activating DEBUG
logging might increase AWS CloudWatch costs.