我尝试使用python的日志记录:
import logging
log = logging.getLogger(__name__)
logInstall = logging.getLogger('/var/log/install.log')
log.info("Everything works great")
logInstall.info("Why is not printed to the log file?")
在日志的日志文件中,每件事都有效并打印出来:“一切都很好”
但在/var/log/install.log
中,我什么都没看到。
我做错了什么?
答案 0 :(得分:1)
你在哪里看到logging.getLogger()
的参数是文件路径???它只是您的记录器对象的名称:
logging.getLogger([名称])
返回具有指定名称的记录器,如果未指定名称,则返回 返回一个记录器,它是层次结构的根记录器。 如果指定,则名称通常是以点分隔的分层名称 比如“a”,“a.b”或“a.b.c.d”。选择这些名称完全取决于 正在使用日志记录的开发人员。
https://docs.python.org/2/library/logging.html#logging.getLogger
此记录器记录到的位置/方式(文件,stderr,syslog,邮件,网络呼叫等)取决于您为自己的应用程序配置日志记录的方式 - 这里的一点是您将记录器的使用分离(在libs中)来自logger配置(在应用程序中)。
请注意,通常的做法是使用__name__
,以便获得模仿包/模块层次结构的记录器层次结构。