Skip to content

Commit b0635b7

Browse files
committed
Attach handler to SDK logger instead of root logger and remote it after test is done. Fix lint issues..
1 parent 194c403 commit b0635b7

File tree

1 file changed

+7
-6
lines changed

1 file changed

+7
-6
lines changed

opentelemetry-sdk/tests/logs/test_export.py

Lines changed: 7 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -40,7 +40,6 @@
4040
OTEL_BLRP_MAX_QUEUE_SIZE,
4141
OTEL_BLRP_SCHEDULE_DELAY,
4242
)
43-
from opentelemetry.sdk.resources import Resource
4443
from opentelemetry.sdk.resources import Resource as SDKResource
4544
from opentelemetry.sdk.util.instrumentation import InstrumentationScope
4645
from opentelemetry.trace import TraceFlags
@@ -343,26 +342,28 @@ def test_emit_call_log_record(self):
343342
logger.error("error")
344343
self.assertEqual(log_record_processor.emit.call_count, 1)
345344

346-
def test_logging_lib_not_invoked_in_batch_log_record_emit(self):
345+
def test_logging_lib_not_invoked_in_batch_log_record_emit(self): # pylint: disable=no-self-use
347346
exporter = Mock()
348347
processor = BatchLogRecordProcessor(exporter)
349348
logger_provider = LoggerProvider(
350-
resource=Resource.create(
349+
resource=SDKResource.create(
351350
{
352351
"service.name": "shoppingcart",
353352
"service.instance.id": "instance-12",
354353
}
355354
),
356355
)
357356
logger_provider.add_log_record_processor(processor)
358-
# Attach OTLP handler to root logger
359-
logging.getLogger().addHandler(
360-
LoggingHandler(level=logging.INFO, logger_provider=logger_provider)
357+
handler = LoggingHandler(
358+
level=logging.INFO, logger_provider=logger_provider
361359
)
360+
# Attach OTLP handler to SDK logger
361+
logging.getLogger("opentelemetry.sdk").addHandler(handler)
362362
# If `emit` calls logging.log then this test will throw a maximum recursion depth exceeded exception and fail.
363363
processor.emit(EMPTY_LOG)
364364
processor.shutdown()
365365
processor.emit(EMPTY_LOG)
366+
logging.getLogger("opentelemetry.sdk").removeHandler(handler)
366367

367368
def test_args(self):
368369
exporter = InMemoryLogExporter()

0 commit comments

Comments
 (0)