python日志。不记录自定义日志条目

2024-09-22 16:36:14 发布

您现在位置:Python中文网/ 问答频道 /正文

对于python项目,我有一个简单的记录器,如下所示:

#!flask/bin/python
from flask import Flask,request, Response
import os.path
import json
import sys
import logging
import logging.handlers
from dbMongoManager import saveToMongo
from dbSQLManager import saveToMYSQL
from FailedRequest import FailedRequest
from JSONValidation import validateJSON



#create logger
logger = logging.getLogger('werkzeug')
#defines logger file and max size
handler = logging.handlers.RotatingFileHandler('request.log',maxBytes=5000000)
#define logger format
formatter = logging.Formatter("test %(asctime)s [%(threadName)-12.12s] [%(levelname)-5.5s]  %(message)s")
handler.setFormatter(formatter)
#add loggerhandler to applications
logger.addHandler(handler)
app.logger.addHandler(handler)

logger.info("Logger started")
...
#app implementation here
.

文件请求.log已创建,但条目“logger started”不在任何位置。 尽管来自flask的事件(服务器启动/停止,请求响应)会被记录下来。 我的所有自定义日志(记录器信息, 记录器。警告,等等…)在文件中没有出现。我的错误在哪里? 我所看到的所有例子都与这个实现一起工作。在

重新加载脚本后从日志中删除的内容:

^{pr2}$

Tags: fromimportlogappflaskrequestformatterlogging
1条回答
网友
1楼 · 发布于 2024-09-22 16:36:14

这应该行得通

import logging
import logging.handlers

# create logger
root_logger = logging.getLogger()
root_logger.setLevel(0)
# defines logger file and max size
handler = logging.handlers.RotatingFileHandler('request.log', maxBytes=5000000)
# define logger format
formatter = logging.Formatter("test %(asctime)s [%(threadName)-12.12s] [%(levelname)-5.5s]  %(message)s")
handler.setFormatter(formatter)
handler.setLevel(0)
# add loggerhandler to applications
root_logger.addHandler(handler)

logger = logging.getLogger('app')

logger.info("Logger started")

相关问题 更多 >