@@ -26,16 +26,37 @@ def format(self, record):
2626        formatter  =  logging .Formatter (log_fmt )
2727        return  formatter .format (record )
2828
29+ class  ConsoleFormatter (logging .Formatter ):
30+     format  =  "%(asctime)s [%(levelname)s] %(message)s | %(name)s | %(filename)s | %(lineno)d" 
31+ 
32+     FORMATS  =  {
33+         logging .DEBUG : format ,
34+         logging .INFO : format ,
35+         logging .WARNING : format ,
36+         logging .ERROR : format ,
37+         logging .CRITICAL : format 
38+     }
39+ 
40+     def  format (self , record ):
41+         log_fmt  =  self .FORMATS .get (record .levelno , self .format )
42+         formatter  =  logging .Formatter (log_fmt )
43+         return  formatter .format (record )
44+ 
45+ 
2946
3047class  JSONFormatter (logging .Formatter ):
3148    def  format (self , record ):
49+         # Ensure asctime and message are computed 
50+         record .asctime  =  self .formatTime (record , self .datefmt )
51+         record .message  =  record .getMessage ()
52+ 
3253        log_record  =  {
3354            "timestamp" : record .asctime ,
3455            "level" : record .levelname ,
3556            "message" : record .message ,
3657            "name" : record .name ,
3758            "filename" : record .filename ,
38-             "lineno" : record .lineno 
59+             "lineno" : record .lineno , 
3960        }
4061        return  json .dumps (log_record )
4162
0 commit comments