我正在使用Python,我需要记录器,所以我决定开始使用RotatingFileHandler。以下是我的logging.conf
文件
[loggers]
keys=root
[handlers]
keys=logfile
[formatters]
keys=logfileformatter
[logger_root]
level=DEBUG
handlers=logfile
[formatter_logfileformatter]
format=%(asctime)s %(name)-12s: %(levelname)s %(message)s
[handler_logfile]
class=handlers.RotatingFileHandler
level=NOTSET
args=('ookagent.log', 'a', 50000000000, 5)
formatter=logfileformatter
以下是我的Python脚本,我可以从中成功登录到文件。但我不知道如何同时记录文件和控制台。
#!/usr/bin/python
import logging
import logging.config
import logging.handlers
# using RotatingFileHandler for logging purpose
logging.config.fileConfig('logging.conf')
ooklogger = logging.getLogger('')
ooklogger.info("HelloWorld")
我们可以在logging.conf文件中进行更改,我可以通过该文件同时登录控制台和文件吗?有可能吗?
答案 0 :(得分:1)
当然,日志配置文件格式允许您指定多个处理程序。您可以使用StreamHandler
登录控制台。这将需要对您的配置文件进行类似的修改:
[handlers]
keys=logfile,logconsole
[handler_logconsole]
class=StreamHandler
# other configuration directives as you like
[logger_root]
handlers=logfile,logconsole
有关更多信息和示例,请参阅config file documentation。