-
Notifications
You must be signed in to change notification settings - Fork 763
Closed
Labels
Description
Using these python modules:
opentelemetry-instrumentation-fastapi==0.39b0
opentelemetry-api==1.18.0
opentelemetry-sdk==1.18.0
opentelemetry-exporter-otlp==1.18.0
opentelemetry-exporter-otlp-proto-grpc==1.18.0
opentelemetry-exporter-otlp-proto-http==1.18.0
opentelemetry-instrumentation==0.39b0
opentelemetry-proto==1.18.0
opentelemetry-semantic-conventions==0.39b0
opentelemetry-util-http==0.39b0
opentelemetry-instrumentation-logging==0.39b0
I have the following code snippet:
console_log_exporter = ConsoleLogExporter()
logger_provider = LoggerProvider(
resource=Resource.create({})
)
set_logger_provider(logger_provider)
logger_provider.add_log_record_processor(SimpleLogRecordProcessor(console_log_exporter))
otel_log_handler = LoggingHandler(logger_provider=logger_provider)
LoggingInstrumentor().instrument()
logging.getLogger().addHandler(otel_log_handler)
I have the following env vars set:
OTEL_PYTHON_LOG_CORRELATION=true
OTEL_PYTHON_LOG_FORMAT=%(pathname)s:%(funcName)s:%(lineno)d:%(levelname)s:%(message)s
OTEL_PYTHON_LOG_LEVEL=info
Whenever I do something like logging.info("Hi there, Mr. Pineapple!"), I see that the output JSON has something that looks like this:
{
"body": "Hi there, Mr. Pineapple!",
"severity_number": "<SeverityNumber.INFO: 9>",
"severity_text": "INFO",
"attributes": {
"otelSpanID": "2e94f2400eb2f2c9",
"otelTraceID": "1b63d84a5a4faec3b1dd77477d1d52df",
"otelTraceSampled": true,
"otelServiceName": "my-fruit-service"
},
"timestamp": "2023-06-19T06:48:28.605903Z",
"trace_id": "0x1b63d84a5a4faec3b1dd77477d1d52df",
"span_id": "0x2e94f2400eb2f2c9",
"trace_flags": 1,
"resource": "BoundedAttributes({'telemetry.sdk.language': 'python', 'telemetry.sdk.name': 'opentelemetry', 'telemetry.sdk.version': '1.18.0', 'service.instance.id': 'dev', 'service.name': 'my-fruit-service'}, maxlen=None)"
}
I am expecting "body" to have the format dictated by OTEL_PYTHON_LOG_FORMAT, but it does not. How can I get "body" to also contain for example lineno, pathname, etc? @srikanthccv
Metadata
Metadata
Assignees
Labels
Type
Projects
Status
Done
Status
Done