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