@@ -68,40 +68,13 @@ def emit(self, record):
6868 self .collector .add_record (record )
6969
7070
71+ # We don't use enable/disable_instrumentation because logging is global.
72+ # We can't add thread-local logging handlers. Hopefully logging is cheap.
73+
7174collector = LogCollector ()
7275logging_handler = ThreadTrackingHandler (collector )
7376logging .root .setLevel (logging .NOTSET )
74- logging .root .addHandler (logging_handler ) # register with logging
75-
76- # We don't use enable/disable_instrumentation because we can't make these
77- # functions thread-safe and (hopefully) logging isn't too expensive.
78-
79- try :
80- import logbook
81- logbook_supported = True
82- except ImportError :
83- # logbook support is optional, so fail silently
84- logbook_supported = False
85-
86- if logbook_supported :
87- class LogbookThreadTrackingHandler (logbook .handlers .Handler ):
88- def __init__ (self , collector ):
89- logbook .handlers .Handler .__init__ (self , bubble = True )
90- self .collector = collector
91-
92- def emit (self , record ):
93- record = {
94- 'message' : record .message ,
95- 'time' : record .time ,
96- 'level' : record .level_name ,
97- 'file' : record .filename ,
98- 'line' : record .lineno ,
99- 'channel' : record .channel ,
100- }
101- self .collector .add_record (record )
102-
103- logbook_handler = LogbookThreadTrackingHandler (collector )
104- logbook_handler .push_application () # register with logbook
77+ logging .root .addHandler (logging_handler )
10578
10679
10780class LoggingPanel (Panel ):
0 commit comments