小编Loi*_*ix0的帖子

Python记录多个文件

我已经阅读了日志记录模块文档,虽然我可能错过了一些明显的东西,但我得到的代码似乎没有按预期工作.我正在使用Python 2.6.4.

我的程序包含几个不同的python文件,我想从中将日志消息发送到文本文件,可能还有屏幕.我想这是常见的事情,所以我在某处弄乱了.

我的代码在一分钟做的是正确地记录到文本文件,有点.但是正在复制登录到屏幕,一个具有指定的格式,一个没有.此外,当我关闭屏幕输出时,我仍然打印一次文本,这是我不想要的 - 我只是想将它记录到文件中.

无论如何,一些代码:

#logger.py
import logging
from logging.handlers import RotatingFileHandler
import os

def setup_logging(logdir=None, scrnlog=True, txtlog=True, loglevel=logging.DEBUG):        
    logdir = os.path.abspath(logdir)

    if not os.path.exists(logdir):
        os.mkdir(logdir)

    log = logging.getLogger('stumbler')
    log.setLevel(loglevel)

    log_formatter = logging.Formatter("%(asctime)s - %(levelname)s :: %(message)s")

    if txtlog:
        txt_handler = RotatingFileHandler(os.path.join(logdir, "Stumbler.log"), backupCount=5)
        txt_handler.doRollover()
        txt_handler.setFormatter(log_formatter)
        log.addHandler(txt_handler)
        log.info("Logger initialised.")

    if scrnlog:
        console_handler = logging.StreamHandler()
        console_handler.setFormatter(log_formatter)
        log.addHandler(console_handler)
Run Code Online (Sandbox Code Playgroud)

没有什么不寻常的.

#core.py
import logging
corelog = logging.getLogger('stumbler.core')  # From what I understand of the docs, this should work :/

class Stumbler:
    [...] …
Run Code Online (Sandbox Code Playgroud)

python logging error-logging

6
推荐指数
1
解决办法
7650
查看次数

标签 统计

error-logging ×1

logging ×1

python ×1