@@ -245,6 +245,8 @@ def test_log_record_trace_correlation(self):
245245 self .assertEqual (log_record .span_id , span_context .span_id )
246246 self .assertEqual (log_record .trace_flags , span_context .trace_flags )
247247
248+ # TODO: Duplicate following tests with format from basic config
249+
248250 def test_warning_without_formatter (self ):
249251 processor , logger = set_up_test_logging (logging .WARNING )
250252 logger .warning ("Test message" )
@@ -283,6 +285,53 @@ def test_log_body_is_always_string_with_formatter(self):
283285 log_record = processor .get_log_record (0 )
284286 self .assertIsInstance (log_record .body , str )
285287
288+ def test_warning_basic_config_format (self ):
289+ logging .basicConfig (
290+ format = "BASIC CONFIG - %(name)s - %(levelname)s - %(message)s" ,
291+ )
292+ processor , logger = set_up_test_logging (logging .WARNING )
293+ logger .warning ("Test message" )
294+
295+ log_record = processor .get_log_record (0 )
296+ self .assertEqual (log_record .body , "BASIC CONFIG - foo - WARNING - Test message" )
297+
298+ def test_warning_basic_config_level_filter (self ):
299+ logging .basicConfig (
300+ level = logging .ERROR ,
301+ )
302+ processor , logger = set_up_test_logging ()
303+ logger .warning ("Test message" )
304+
305+ log_record = processor .get_log_record (0 )
306+ # TODO: Assert none because of filter
307+ self .assertEqual (log_record .body , "BASIC CONFIG - foo - WARNING - Test message" )
308+
309+ def test_warning_basic_config_level_conflict (self ):
310+ logging .basicConfig (
311+ level = logging .ERROR ,
312+ )
313+ processor , logger = set_up_test_logging (logging .WARNING )
314+ logger .warning ("Test message" )
315+
316+ log_record = processor .get_log_record (0 )
317+ self .assertEqual (log_record .body , "BASIC CONFIG - foo - WARNING - Test message" )
318+
319+ def test_warning_basic_config_format_conflict (self ):
320+ logging .basicConfig (
321+ format = "BASIC CONFIG - %(name)s - %(levelname)s - %(message)s" ,
322+ level = logging .ERROR ,
323+ )
324+ processor , logger = set_up_test_logging (
325+ logging .WARNING ,
326+ formatter = logging .Formatter (
327+ "%(name)s - %(levelname)s - %(message)s"
328+ ),
329+ )
330+ logger .warning ("Test message" )
331+
332+ log_record = processor .get_log_record (0 )
333+ self .assertEqual (log_record .body , "foo - WARNING - Test message" )
334+
286335 @patch .dict (os .environ , {"OTEL_SDK_DISABLED" : "true" })
287336 def test_handler_root_logger_with_disabled_sdk_does_not_go_into_recursion_error (
288337 self ,
@@ -299,12 +348,16 @@ def test_handler_root_logger_with_disabled_sdk_does_not_go_into_recursion_error(
299348 self .assertEqual (processor .emit_count (), 0 )
300349
301350
302- def set_up_test_logging (level , formatter = None , root_logger = False ):
351+ def set_up_test_logging (level = None , formatter = None , root_logger = False ):
303352 logger_provider = LoggerProvider ()
304353 processor = FakeProcessor ()
305354 logger_provider .add_log_record_processor (processor )
306355 logger = logging .getLogger (None if root_logger else "foo" )
307- handler = LoggingHandler (level = level , logger_provider = logger_provider )
356+ handler = None
357+ if level : #TODO: may not be necessary if param defaults to none
358+ handler = LoggingHandler (level = level , logger_provider = logger_provider )
359+ else :
360+ handler = LoggingHandler (logger_provider = logger_provider )
308361 if formatter :
309362 handler .setFormatter (formatter )
310363 logger .addHandler (handler )
0 commit comments