我找到了一些类似的示例来将消息记录到多个文件中。但没有什么完全符合我的要求。我正在使用日志记录模块,并将所有信息消息记录到控制台和文件中。(我将在以后关闭控制台日志记录)。
但是我希望扩展它以将所有信息消息记录到 file.log 并将所有错误消息记录到 file.err。如果可以将所有消息记录到 file.log(错误和信息),然后将所有错误消息记录到单独的文件,那就更好了。
这可能吗?
---------
我显然无法在 7 个小时内回答我自己的问题,所以我将更新我原来的问题。
---------
我现在觉得很傻。在发布前几个小时尝试示例后,我“再次”发现了这一点。这就像在阅读示例时键入我正在尝试做的事情的任务触发了一些事情。
http://docs.python.org/2/howto/logging-cookbook.html
这会将 INFO 级别及以上的所有内容输出到一个日志文件 (log_file),然后还将 logging.error 和 logging.warning 消息打印到单独的文件 (err_file)
# set up logging to file - see previous section for more details
logging.basicConfig(level=logging.INFO,
format='%(asctime)s %(name)-12s %(levelname)-8s %(message)s',
filemode='w')
log_error = logging.FileHandler(err_file)
log_error.setLevel(logging.WARNING)
log_info = logging.FileHandler(log_file)
log_info.setLevel(logging.INFO)
# set a format which is simpler for console use
formatter = logging.Formatter('%(asctime)s %(levelname)-8s %(message)s')
# tell the handler to use this format
log_error.setFormatter(formatter)
log_info.setFormatter(formatter)
# add the handler to the root logger
logging.getLogger('').addHandler(log_info)
logging.getLogger('').addHandler(log_error)