Skip to content

Exporters

SQS Trace Exporter

aws_lambda_opentelemetry.trace.export.SQSTraceExporter

Bases: SpanExporter

Implements OpenTelemetry SpanExporter interface which can be used in combination with a SpanProcessor to publish traces to Amazon SQS.

provider = TracerProvider()
processor = SimpleSpanProcessor(SQSTraceExporter())
provider.add_span_processor(processor)
trace.set_tracer_provider(provider)

__init__(queue_url, sqs_client, compression=None)

export(spans)

Exports spans to SQS in batches when the batch size is reached.

shutdown()

Flush remaining spans before shutdown.

force_flush(timeout_millis=30000)

Nothing is buffered in this exporter, so this method does nothing.

SQS Batch Span Processor

aws_lambda_opentelemetry.trace.export.SQSBatchSpanProcessor

Bases: BatchSpanProcessor

BatchSpanProcessor configured for SQS limits.

Automatically sets max_export_batch_size to 10 (SQS batch limit).

provider = TracerProvider()
exporter = SQSTraceExporter(queue_url="your-sqs-queue-url")
processor = SQSBatchSpanProcessor(exporter)
provider.add_span_processor(processor)
trace.set_tracer_provider(provider)

Serialization

aws_lambda_opentelemetry.trace.export.Base64SpanSerializer

aws_lambda_opentelemetry.trace.export.Compression

Bases: Enum