V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
推荐学习书目
Learn Python the Hard Way
Python Sites
PyPI - Python Package Index
http://diveintopython.org/toc/index.html
Pocoo
值得关注的项目
PyPy
Celery
Jinja2
Read the Docs
gevent
pyenv
virtualenv
Stackless Python
Beautiful Soup
结巴中文分词
Green Unicorn
Sentry
Shovel
Pyflakes
pytest
Python 编程
pep8 Checker
Styles
PEP 8
Google Python Style Guide
Code Style from The Hitchhiker's Guide
scalaview
V2EX  ›  Python

python logger 没有往文件写 log

  •  
  •   scalaview ·
    scalaview · 2016-03-04 14:41:43 +08:00 · 3819 次点击
    这是一个创建于 3186 天前的主题,其中的信息可能已经有所发展或是发生改变。

    代码是下面这么写的,用的是 fileHandler ,但是怎么都输出不了到 orion.log 文件 zhong 中,请问大家可以看出哪里写错了吗

    import logging
    import logging.config
    
    
    def logger():
        logging.config.fileConfig("logging.conf")
        return logging.getLogger("orion")
    
    #使用
    logger().info("finish")
    
    # logging.conf
    [loggers]
    keys=root, orion
    
    [handlers]
    keys=consoleHandler,fileHandler
    
    [formatters]
    keys=simpleFormatter
    
    [logger_root]
    level=DEBUG
    handlers=fileHandler
    
    [logger_orion]
    level=DEBUG
    handlers=fileHandler
    propagate=0
    qualname=logger_orion
    
    [handler_consoleHandler]
    class=StreamHandler
    level=DEBUG
    formatter=simpleFormatter
    args=(sys.stderr,)
    
    [handler_fileHandler]
    class=FileHandler
    level=INFO
    formatter=simpleFormatter
    args=('orion.log', 'a+')
    
    [formatter_simpleFormatter]
    format=%(asctime)s[%(name)s]:%(levelname)s-{%(module)s-%(funcName)s-line:%(lineno)d}: %(message)s
    
    5 条回复    2016-03-04 21:51:30 +08:00
    zjb861107
        1
    zjb861107  
       2016-03-04 15:12:20 +08:00
    我试了可以写入,不是代码的问题
    scalaview
        2
    scalaview  
    OP
       2016-03-04 15:26:20 +08:00
    @zjb861107 我没想到具体什么原因了,因为看上去也没有哪里错误的地方
    zjb861107
        3
    zjb861107  
       2016-03-04 16:21:25 +08:00
    logging.conf ,是不是这个文件编码的问题?
    scalaview
        4
    scalaview  
    OP
       2016-03-04 17:07:36 +08:00
    @zjb861107 我好像知道是什么原因了

    一但我用多线程处理的时候,线程里面调用 logger 就不能写入到文件里面

    多线程的 logger 是怎么写的,有什么不一样么
    sujin190
        5
    sujin190  
       2016-03-04 21:51:30 +08:00
    一样的啊, logging 底层有锁的啊,线程安全的
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   951 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 23ms · UTC 22:54 · PVG 06:54 · LAX 14:54 · JFK 17:54
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.