python logger 动态设置日志名


代码:

import logging

logger = logging.getLogger('')
logger.setLevel(level=logging.INFO)

def setLogName(name):
    handler = logging.FileHandler(name, mode='w')
    handler.setLevel(logging.INFO)
    formatter = logging.Formatter('%(asctime)s %(filename)s[line:%(lineno)d] %(levelname)s %(message)s', '%a, %d %b %Y %H:%M:%S')
    handler.setFormatter(formatter)
    logger.addHandler(handler)

if __name__ == "__main__":
    setLogName('/Users/test/test_log.txt')
    logger.info("start func111")
    logger.info("start func222")
    logger.info("start func333")

结果:

cat test_log.txt 

Tue, 12 Mar 2019 18:44:53 log.py[line:32] INFO start func111

Tue, 12 Mar 2019 18:44:53 log.py[line:33] INFO start func222

Tue, 12 Mar 2019 18:44:53 log.py[line:34] INFO start func333

 


免责声明!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系本站邮箱yoyou2525@163.com删除。



 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM