我在这上面花了太多的时间,我自己也弄不明白。
我正在编写一些使用一些模块的代码,所以我想为我的消息创建一个特定的日志记录器,而不是其他模块的日志记录器(它们太多了,所以我不想为每个模块设置不同的级别)。
我将我的用例简化为:
import logging
logger = logging.getLogger('test')
logger.setLevel(level=logging.INFO)
print(logging.Logger.manager.loggerDict)
logger.debug('This is a debug message')
logger.info('This is an info message')
logger.warning('This is a warning message')
logger.error('This is an error message')
logger.critical('This is a critical message')
当我执行前面的代码时,我希望记录我的信息消息。
结果我得到了:
python3 test.py
{'test': <Logger test (INFO)>}
This is a warning message
This is an error message
This is a critical message
与debug
相同,它总是打印警告/错误/关键消息,而不是debug/info。
如果我提高了日志记录级别(假设error
),它会按照预期工作。
python --version
Python 3.9.1
更改包级别/根记录器(文档)上的配置。
logging.basicConfig(level=logging.INFO)
问题内容: 我正在寻找与JavaScript相同的效果。 我今天下午使用Twisted.web编写了一个基于Web的简单解释器。您基本上是通过表单提交Python代码块的,客户端来抓取并执行它。我希望能够发出一个简单的弹出消息,而不必每次都重写一堆样板wxPython或TkInter代码(因为该代码通过表单提交然后消失了)。 我尝试过tkMessageBox: 但这会在后台用tk图标打开另一个窗口
我正在使用规范来构建使用Java的web服务。我使用过滤器进行身份验证和授权,为每个请求调用所有过滤器,我不需要为某个请求只指定一个过滤器,我如何做到这一点?我只想阻止另一个过滤器调用。我不使用,而是使用扩展带有注释的类,如下所示:
我试图创建一个完全独立的第二个上下文/配置/记录器-而不是现有配置/上下文中的记录器。日志消息将发送到STDOUT。 当前代码 上面的.error()调用转到标准输出。请注意,我尝试使用reconfigure()而不是initialize(),但这会打乱我的原始配置。 当我打印出来时,记录器似乎是错误的,它们的名称和上下文似乎是正确的,但处于错误级别。还有一些事情要做,不要做附加物。 从生成器生成
问题内容: 我想使用Java util日志记录按照以下格式为每个请求创建日志文件。 有人请告诉我如何使用Java util日志记录来实现这一目标? 问题答案: 该文件处理器不支持通过生成的文件名的日期和时间从日志管理。 如果要在启动时生成文件名,则可以将FileHandler子类化,并创建一个静态方法来使用SimpleDateFormat生成文件名。该日志管理支持“配置”选项,也将让您安装自定义代
问题内容: 我正在开发一个简单的桌面应用程序(不是webapp)。 这是我的: 如你所见,为了消除控制台中的Spring日志消息,我尝试了以下解决方案: 当我从代码中调用log4j记录器时,记录消息是根据上面指定的模式进行的(这很好)。 但是,最糟糕的是-我仍然从Spring进入控制台的DEBUG级别消息…它们看起来像这里: 无法禁用日志记录消息 他们有不同的模式。好像他们忽略了我的设置。 我还尝
有人能帮我弄清楚这件事吗。 谢了!