added several new files
This commit is contained in:
@@ -0,0 +1,33 @@
|
||||
import logging
|
||||
from logging import Logger
|
||||
import os
|
||||
import sys
|
||||
|
||||
|
||||
def getLogger(name: str = 'root', loglevel: str = 'INFO') -> Logger:
|
||||
logger = logging.getLogger(name)
|
||||
|
||||
# if logger 'name' already exists, return it to avoid logging duplicate
|
||||
# messages by attaching multiple handlers of the same type
|
||||
if logger.handlers:
|
||||
return logger
|
||||
# if logger 'name' does not already exist, create it and attach handlers
|
||||
else:
|
||||
# set logLevel to loglevel or to INFO if requested level is incorrect
|
||||
loglevel = getattr(logging, loglevel.upper(), logging.INFO)
|
||||
logger.setLevel(loglevel)
|
||||
if loglevel == logging.DEBUG:
|
||||
fmt = '%(asctime)s %(levelname)-8s %(message)s (%(filename)s)'
|
||||
else:
|
||||
fmt = '%(asctime)s %(levelname)-8s %(message)s'
|
||||
fmt_date = '%Y-%m-%dT%T'
|
||||
formatter = logging.Formatter(fmt, fmt_date)
|
||||
handler = logging.StreamHandler()
|
||||
handler.setFormatter(formatter)
|
||||
logger.addHandler(handler)
|
||||
|
||||
if logger.name == 'root':
|
||||
logger.warning('Running: %s %s',
|
||||
os.path.basename(sys.argv[0]),
|
||||
' '.join(sys.argv[1:]))
|
||||
return logger
|
||||
Reference in New Issue
Block a user