File tree Expand file tree Collapse file tree 2 files changed +11
-3
lines changed
docs/examples/multi-destination-exporting Expand file tree Collapse file tree 2 files changed +11
-3
lines changed Original file line number Diff line number Diff line change 2727from opentelemetry .exporter .otlp .proto .http ._log_exporter import (
2828 OTLPLogExporter as HttpLogExporter ,
2929)
30+ from opentelemetry .instrumentation .logging .handler import LoggingHandler
3031from opentelemetry .sdk ._logs import LoggerProvider
3132from opentelemetry .sdk ._logs .export import (
3233 BatchLogRecordProcessor ,
5758 BatchLogRecordProcessor (ConsoleLogRecordExporter ())
5859)
5960
60- # Use Python's standard logging, bridged to OpenTelemetry
61+ # Bridge Python's logging to OpenTelemetry
62+ handler = LoggingHandler (level = logging .NOTSET , logger_provider = logger_provider )
63+ logging .getLogger ().setLevel (logging .NOTSET )
64+ logging .getLogger ().addHandler (handler )
65+
6166logger = logging .getLogger ("myapp" )
62- logger .setLevel (logging .INFO )
6367logger .info ("Logs are exported to all three destinations." )
6468logger .warning ("This warning also goes everywhere." )
6569
Original file line number Diff line number Diff line change 3131 PeriodicExportingMetricReader ,
3232)
3333
34- # Each reader has its own export interval and exporter
34+ # Destination 1: OTLP over gRPC
3535grpc_reader = PeriodicExportingMetricReader (
3636 GrpcMetricExporter (endpoint = "http://localhost:4317" , insecure = True )
3737)
38+
39+ # Destination 2: OTLP over HTTP
3840http_reader = PeriodicExportingMetricReader (
3941 HttpMetricExporter (endpoint = "http://localhost:4318/v1/metrics" )
4042)
43+
44+ # Destination 3: Console (for debugging)
4145console_reader = PeriodicExportingMetricReader (ConsoleMetricExporter ())
4246
4347# Pass all readers to the MeterProvider
You can’t perform that action at this time.
0 commit comments