Official Siteを参考にして作成(ここ)
log.conf設定ファイル
[loggers] keys=root,app - [formatters] keys=default,basic - [handlers] keys=frotate,default - [formatter_default] format=%(asctime)s %(levelname)s %(message)s datefmt= - [formatter_basic] class=logging.Formatter format=%(name)s %(levelno)s %(levelname)s %(pathname)s %(filename)s %(module)s %(lineno)d %(created)f %(asctime)s %(msecs)d %(relativeCreated)d %(thread)d % (process)d %(message)s datefmt=%d/%m/%Y %H:%M:%S - [handler_frotate] class=handlers.RotatingFileHandler level=DEBUG formatter=basic args=('./app.log', 'a', (5*1024*1024), 5) - [handler_default] class=StreamHandler level=NOTSET formatter=default args=(sys.stdout,) - [logger_app] level=DEBUG handlers=frotate qualname=app - [logger_root] level=NOTSET handlers=default
log.py
import logging import logging.config - LOGGING_CONF = 'log.conf' # 今回使用する設定ファイルパスを指定します。 logging.config.fileConfig(LOGGING_CONF) # 設定ファイルをセットします。 logger = logging.getLogger("root") # ロガーのkeyをrootにします。(後述) - logger.debug("logger=root : debug message") # debugレベルのログ出力を行います。 logger.info("logger=root : info message") # infoレベルのログ出力を行います。 logger.warn("logger=root : warn message") # warnレベルのログ出力を行います。 logger.error("logger=root : error message") # errorレベルのログ出力を行います。 logger.critical("logger=root : critical message") # criticalレベルのログ出力を行います。 - logger1 = logging.getLogger("app") # ロガーのkeyをappにします。(後述) for i in range(10000): logger1.debug("logger=app : debug message") # debugレベルのログ出力を行います。 logger1.info("logger=app : info message") # infoレベルのログ出力を行います。 logger1.warn("logger=app : warn message") # warnレベルのログ出力を行います。 logger1.error("logger=app : error message") # errorレベルのログ出力を行います。 logger1.critical("logger=app : critical message") # criticalレベルのログ出力を行います。