Skip to content

OpenTelemetry Integration

Lumberjack is built on OpenTelemetry and supports custom exporters for complete compatibility with the OpenTelemetry ecosystem.

Use any OpenTelemetry exporter directly:

from opentelemetry.exporter.jaeger.thrift import JaegerExporter
from opentelemetry.exporter.prometheus import PrometheusMetricReader
from opentelemetry.exporter.otlp.proto.grpc.trace_exporter import OTLPSpanExporter
from lumberjack_sdk import Lumberjack
# Custom exporters
jaeger_exporter = JaegerExporter(
agent_host_name="jaeger",
agent_port=6831,
)
otlp_exporter = OTLPSpanExporter(
endpoint="http://otel-collector:4317",
insecure=True
)
prometheus_reader = PrometheusMetricReader()
Lumberjack.init(
project_name="my-app",
custom_span_exporter=jaeger_exporter, # or otlp_exporter
custom_metrics_exporter=prometheus_reader,
)
from opentelemetry.exporter.otlp.proto.grpc.trace_exporter import OTLPSpanExporter
from opentelemetry.exporter.otlp.proto.grpc._log_exporter import OTLPLogExporter
from lumberjack_sdk import Lumberjack
# Send to any OTLP-compatible collector
otlp_span_exporter = OTLPSpanExporter(
endpoint="http://otel-collector:4317",
insecure=True
)
otlp_log_exporter = OTLPLogExporter(
endpoint="http://otel-collector:4317",
insecure=True
)
Lumberjack.init(
project_name="my-app",
custom_span_exporter=otlp_span_exporter,
custom_log_exporter=otlp_log_exporter,
)