当前位置: 首页 > 知识库问答 >
问题:

如何为单个类指定日志记录级别

麻学博
2023-03-14
handlers=java.util.logging.FileHandler, java.util.logging.ConsoleHandler
java.util.logging.ConsoleHandler.level=INFO
java.util.logging.ConsoleHandler.formatter=java.util.logging.SimpleFormatter

java.util.logging.FileHandler.level=INFO
java.util.logging.FileHandler.pattern=logs/ant-logging.log

# Write 10MB before rotating this file
java.util.logging.FileHandler.limit=10000000

# Number of rotating files to be used
java.util.logging.FileHandler.count=4
java.util.logging.FileHandler.formatter=java.util.logging.SimpleFormatter

.level=INFO 

现在,它调用的一个java文件需要花费大量时间来完成。我没有这个类的访问权限,所以我想为那个特定的类设置一个特定的日志记录级别,以试图了解我的实现有什么问题。

我不想改变全局日志记录级别,我只想为某个类添加一个特定的级别,如何实现?

共有1个答案

徐淳
2023-03-14

为记录器名称指定日志记录级别。根据应用程序的一般编写方式,记录器名称可能与类的名称相同,或者它将使用某个模块名称

在属性文件中,可以指定记录器的名称:

所有名称以“.level”结尾的属性都假定为记录器定义日志级别。因此,“foo.level”为名为“foo”的记录器定义日志级别,并(递归地)为命名层次结构中的任何子级定义日志级别。因此,树中子节点的级别设置应该在父节点的设置之后。属性名“.level”可用于设置树根的级别。

foo.level=FINE
 类似资料:
  • 在我的Java应用程序中,我使用SLF4J+Logback进行日志记录。我在开发环境中使用调试级日志记录,在生产环境中使用错误级日志记录。但是有一些消息我无论如何都想要记录下来,无论日志级别如何(类似于,但使用的是logger)。 有什么切实可行的方法可以实现这一点吗?我可以使用error或更低的级别,但我想做的是给出一些信息,所以在语义上是错误的,它不是错误。 我可以在我的中为我的类定义另一个记

  • ,日志记录将进入一个文件; (路径)/service_name/service_name.log 我想用logback复制这种行为,但在logback.xml配置中获取“logger”名称时遇到了真正的困难。它可以在log encoder.pattern中看到,即“%d%-5level%logger{35}-%msg%n”。

  • 问题内容: 我在这里浏览了python日志记录类的教程,没有发现任何东西可以让我为同一输出制作多个不同级别的日志。最后,我想拥有三个日志:( 调试级别) (信息级别) (错误级别) 有没有一种方法可以在一个脚本中为同一输入生成多个日志文件? <------------- UPDATE#1 --------------------------> 因此,在实现@robert的建议时,我现在有一个小问题

  • 现在,问题是,当我以以下方式进行日志记录时: 尽管根记录器级别被设置为“错误”,但日志条目仍然存在于两个日志文件中。然而,当我去掉“it.pkg.testpkg.service”记录器(通过注释或删除它)时,条目停止进入根记录器。我不太清楚这是怎么回事。 目前,我已经找到了一个临时解决方案,方法是在“root_file_appender”中添加以下条目: 谢了。

  • 有人能帮我设置日志级别以调试和捕获更多日志所需的spark配置吗

  • 我使用Kubernetes作为cron作业运行python脚本。问题是,直到作业完成后,我才看到脚本的输出(可能需要一段时间才能运行)。我怀疑这是由于日志记录级别(--v选项)造成的,但在我的整个生命周期中,我都找不到它的文档(默认为--v=0)。如果我想增加输出内容的详细程度,是否有人知道“INFO”或“TRACE”的值(或者这些值是什么/定义在哪里)?提前谢谢你的帮助。 编辑:是否有人在Kub