ReactSeq / onmt /utils /logging.py
Oopstom's picture
Upload 313 files
c668e80 verified
# -*- coding: utf-8 -*-
import logging
from logging.handlers import RotatingFileHandler
# placing this here make it easier to call logger.info
# from anywhere, just 'from onmt.utils.logging import logger'
logger = logging.getLogger("onmt")
def init_logger(
log_file=None,
log_file_level=logging.NOTSET,
rotate=False,
log_level=logging.INFO,
):
log_format = logging.Formatter("[%(asctime)s %(levelname)s] %(message)s")
logger = logging.getLogger("onmt")
logger.setLevel(log_level)
console_handler = logging.StreamHandler()
console_handler.setFormatter(log_format)
logger.handlers = [console_handler]
if log_file and log_file != "":
if rotate:
file_handler = RotatingFileHandler(
log_file, maxBytes=1000000, backupCount=10
)
else:
file_handler = logging.FileHandler(log_file)
file_handler.setLevel(log_file_level)
file_handler.setFormatter(log_format)
logger.addHandler(file_handler)
return logger