mirror of
https://github.com/r4sas/py-i2phosts
synced 2025-02-03 02:14:26 +00:00
web/lib/utils.py: a set of various utils for project
And firstly write get_logger() function. It provides common mechanism for creating logger instances inside scripts.
This commit is contained in:
parent
4a2de846b5
commit
85263b65cc
26
web/lib/utils.py
Normal file
26
web/lib/utils.py
Normal file
@ -0,0 +1,26 @@
|
|||||||
|
import logging
|
||||||
|
|
||||||
|
def get_logger(filename=None, log_level='debug'):
|
||||||
|
""" Prepare logger instance for our scripts """
|
||||||
|
|
||||||
|
LEVELS = {
|
||||||
|
'debug': logging.DEBUG,
|
||||||
|
'info': logging.INFO,
|
||||||
|
'warning': logging.WARNING,
|
||||||
|
'error': logging.ERROR,
|
||||||
|
'critical': logging.CRITICAL
|
||||||
|
}
|
||||||
|
level = LEVELS.get(log_level, logging.NOTSET)
|
||||||
|
format = '%(asctime)s %(module)s:%(lineno)d[%(process)d] %(levelname)s: %(message)s'
|
||||||
|
formatter = logging.Formatter(format)
|
||||||
|
logger = logging.getLogger(__name__)
|
||||||
|
logger.setLevel(level)
|
||||||
|
if filename:
|
||||||
|
handler = logging.FileHandler(filename)
|
||||||
|
else:
|
||||||
|
handler = logging.StreamHandler()
|
||||||
|
handler.setFormatter(formatter)
|
||||||
|
logger.addHandler(handler)
|
||||||
|
|
||||||
|
return logger
|
||||||
|
|
Loading…
x
Reference in New Issue
Block a user