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

Dropwizard管理员:更改所有人的日志级别

宰父焕
2023-03-14

我的配置是标准配置

logging:

  # The default level of all loggers. Can be OFF, ERROR, WARN, INFO, DEBUG, TRACE, or ALL.
  level: INFO

  # Logger-specific levels.
  loggers:

    # Sets the level for 'com.example.app' to DEBUG.
    com.example.app: DEBUG

    # Redirects SQL logs to a separate file
    org.hibernate.SQL:
      level: DEBUG

我想将所有记录器的默认日志级别更改为< code>DEBUG。我已经尝试了以下方法,但没有任何效果(比如管理端口是1234):

curl -X POST -d "logger=all&level=DEBUG" localhost:1234/tasks/log-level
curl -X POST -d "level=DEBUG" localhost:1234/tasks/log-level
curl -X POST -d "logger=*&level=DEBUG" localhost:1234/tasks/log-level

当我使用< code>-vv运行这些命令时,例如对于< code>logger=all,我看到了< code >为所有要调试的对象配置的日志记录级别,但是日志的结尾没有改变,仍然是INFO。当然,如果我更改配置并将顶级设置为< code>DEBUG,然后重启,我会得到调试级别。

有什么命令?

共有1个答案

方河
2023-03-14

我已经检查了<code>日志级<code>任务的源代码,其主要逻辑实现如下:

for (String loggerName : loggerNames) {
    ((LoggerContext) loggerContext).getLogger(loggerName).setLevel(loggerLevel);
    output.println(String.format("Configured logging level for %s to %s", loggerName, loggerLevel));
    output.flush();
}

因此,它的实现方式是基于记录器的名称,知道这一点后,我进入< code>org.slf4j.Logger接口的源代码,找到了这个字段:

String ROOT_LOGGER_NAME = "ROOT";

像这样做<code>POST<code>为我解决了这个问题:

curl -X POST -d "logger=ROOT&level=DEBUG" localhost:8081/tasks/log-level
 类似资料:
  • 我改变了我的Wordpress目录结构。以下是我所拥有的: 所以我有一个包含插件和主题的内容目录。然后我有一个wordpress目录,其中包含核心WP文件,减去WP内容文件夹。 有了这个新结构,我必须用这个网址访问WP后端: 有没有办法改变它,这样我就可以像这样访问它: 我不希望wordpress在URL中。这是我需要做的htaccess更新,还是我可以在wp-config.php文件中使用的设置

  • 我目前正在尝试降低我在java项目中使用的PDFBox 1.8.6库的日志记录级别,但失败了。基于前面的问题,我在 /src/目录中有以下log4j.properties文件。 我不确定我还遗漏了什么,因为我仍然在控制台中收到类似以下消息的垃圾邮件。 如果有一种方法可以通过编程方式更改日志级别,那么我根本不会附加到属性文件,因为我在其他任何地方都不使用log4j。我不知道它是否使用log4j。属性

  • 谁知道如何从头开始迁移? 我像往常一样使用命令运行迁移 但不是运行迁移-我收到 谁知道会有什么问题?我需要手动添加数据交换日志和数据交换日志吗?这对我来说很奇怪,因为当我与其他框架分开使用liquibase时,它会为我生成这个表。

  • 假设您的代码正在使用一个模块,该模块使用来自该模块的的日志语句,而不是来自记录器实例的,并且您没有控制权来修改该模块正在使用中。 是否可以在不要求维护者修改代码的情况下为导入的模块自定义日志级别? 这些问题描述了一种非常简单的方法来更改特定模块的日志记录级别 如何禁用来自请求库的日志消息 Python日志记录-禁用导入模块的日志记录 下面的代码实现了所述的解决方案,只记录来自该模块的错误消息,但它

  • 给定的第三方库的源代码我不能更改: 我想消除假阳性。 感谢您的反馈!

  • 在 YOG2 中,使用 yog-log 来处理日志功能,YOG2 的日志功能的特点在于可以准确的提供请求的 LogID ,方便以请求为单位对问题进行追查。 准确提供请求级 LogID 的难点在于如何让各种与请求无关的模块正确的获取当前调用请求的 LogID ,如果使用全局变量,由于 Node.js 的异步 I/O 模型,不同请求直接的 LogID 会出现被覆盖的情况。 yog-log 则通过 do