Logging 日志输出 - 无双重输出问题 - 可多个py文件 - Python

一、多个py文件每次只将一条日志输出到同一个log文件(yourpath\test):

(一)主文件:

1.

logFile = "yourpath\test"

2.

if True:
    import logging
    from logging import handlers
    logger = logging.getLogger('')
    logger.setLevel(logging.NOTSET)
    formatter = logging.Formatter('%(asctime)s %(levelname)s: %(message)s')
    timedRotatingFileHandler = handlers.TimedRotatingFileHandler(filename=logFile,when='midnight')
    timedRotatingFileHandler.setFormatter(formatter)
    timedRotatingFileHandler.setLevel(logging.NOTSET)
    timedRotatingFileHandler.suffix = "%Y-%m-%d.log"
    timedRotatingFileHandler.encoding = "utf-8"
    logging.getLogger('').addHandler(timedRotatingFileHandler)

3.

if True:
    logging.info('yourmessage')
    logging.error("An error:")
    logging.error(e)
    logging.error("\n" + traceback.format_exc())

(二)任意子文件:

1.

if True:
    import logging
    logging.info('yourmessage')

二、一个py文件每次只输出一条日志到log文件

(一)

1.

logFile = "yourpath\test"

2.

if True:
    import logging
    from logging import handlers
    logger = logging.getLogger('')
    logger.setLevel(logging.NOTSET)
    fileHandler = logging.FileHandler(filename=logFile, mode='a')
    fileHandler.setLevel(logging.NOTSET)
    formatter = logging.Formatter('%(asctime)s %(levelname)s: %(message)s')
    fileHandler.setFormatter(formatter)
    logging.getLogger('').addHandler(fileHandler)

3.

if True:
    logging.info('yourmessage')
    logging.error("An error:")
    logging.error(e)
    logging.error("\n" + traceback.format_exc())

(二)

1.

logFile = "yourpath\test"

2.

if True:
    import logging
    from logging import handlers
    logger = logging.getLogger('')
    logger.setLevel(logging.NOTSET)
    fileHandler = logging.FileHandler(filename=logFile, mode='a')
    formatter = logging.Formatter('%(asctime)s %(levelname)s: %(message)s')
    fileHandler.setFormatter(formatter)
    logger.addHandler(fileHandler)

3.

if True:
    logger.info('yourmessage')
    logger.error("An error:")
    logger.error(e)
    logger.error("\n" + traceback.format_exc())

相关推荐

  1. python logging 日志模块保证输出不踩踏

    2024-04-12 21:14:03       53 阅读
  2. qt log 输出文件

    2024-04-12 21:14:03       23 阅读
  3. [python3]线程 日志输出在不同的文件

    2024-04-12 21:14:03       42 阅读
  4. C 宏定义LOG日志输出案例

    2024-04-12 21:14:03       38 阅读
  5. springboot logback 文件配置log输出

    2024-04-12 21:14:03       47 阅读

最近更新

  1. docker php8.1+nginx base 镜像 dockerfile 配置

    2024-04-12 21:14:03       94 阅读
  2. Could not load dynamic library ‘cudart64_100.dll‘

    2024-04-12 21:14:03       100 阅读
  3. 在Django里面运行非项目文件

    2024-04-12 21:14:03       82 阅读
  4. Python语言-面向对象

    2024-04-12 21:14:03       91 阅读

热门阅读

  1. WPF数据绑定

    2024-04-12 21:14:03       36 阅读
  2. 解锁ChatGPT的论文写作技巧,让学术之路更顺畅

    2024-04-12 21:14:03       52 阅读
  3. 【回溯】Leetcode 78. 子集【中等】

    2024-04-12 21:14:03       36 阅读
  4. 日志埋点功能

    2024-04-12 21:14:03       35 阅读
  5. 【无标题】

    2024-04-12 21:14:03       34 阅读
  6. 深度学习的发展历史与关键技术

    2024-04-12 21:14:03       40 阅读
  7. [C++] 小游戏 斗破苍穹 2.10.1 版本 zty出品

    2024-04-12 21:14:03       36 阅读
  8. LeetCode //C - 540. Single Element in a Sorted Array

    2024-04-12 21:14:03       33 阅读
  9. 最大连通块

    2024-04-12 21:14:03       31 阅读
  10. nginx访问控制

    2024-04-12 21:14:03       37 阅读
  11. docker版postgresql数据库主从配置

    2024-04-12 21:14:03       45 阅读
  12. LeetCode hoot100-22

    2024-04-12 21:14:03       36 阅读
  13. 汽车的基本结构有哪些?

    2024-04-12 21:14:03       77 阅读
  14. Centos7 部署Zabbix6.0 LTS

    2024-04-12 21:14:03       40 阅读