26 lines
738 B
Python
26 lines
738 B
Python
|
import logging
|
||
|
from logging.handlers import TimedRotatingFileHandler
|
||
|
|
||
|
logger = logging.getLogger('garflog')
|
||
|
logger.setLevel(logging.INFO)
|
||
|
formatter=logging.Formatter(
|
||
|
'%(asctime)s [%(levelname)s] %(message)s',
|
||
|
datefmt='%Y-%m-%d %H:%M:%S'
|
||
|
)
|
||
|
file_handler = TimedRotatingFileHandler(
|
||
|
'garfbot.log',
|
||
|
when='midnight',
|
||
|
interval=1,
|
||
|
backupCount=7,
|
||
|
delay=True # Counter-intuitively, this will flush output immediately
|
||
|
)
|
||
|
file_handler.setFormatter(formatter)
|
||
|
console_handler = logging.StreamHandler()
|
||
|
console_handler.setFormatter(formatter)
|
||
|
logger.addHandler(file_handler)
|
||
|
logger.addHandler(console_handler)
|
||
|
|
||
|
if not logger.hasHandlers():
|
||
|
logger.addHandler(file_handler)
|
||
|
logger.addHandler(console_handler)
|