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

如果我使用log4j2,如何通过更改应用程序属性中的任何属性来更改Spring Boot项目(在生产环境中)中的日志级别

宋铭
2023-03-14

我正在开发一个spring boot服务(2.1.7 spring boot版本),其中我使用log4j2建立日志及其模式

    <?xml version="1.0" encoding="UTF-8"?>
<Configuration status="INFO" name="MyService">
    <Properties>
        <Property name="project.component">${bundle:bootstrap:project.component}</Property>
        <Property name="project.version">${bundle:bootstrap:project.version}</Property>
    </Properties>
    <Appenders>
        <Console name="main" target="SYSTEM_OUT">
            <PatternLayout
              pattern="%d{yyyy-MM-dd HH:mm:ss,SSSZ} ${project.component} ${project.version} - %msg%n"/>
        </Console>
    </Appenders>
    <Loggers>
        <Logger name="root" level="INFO">
            <AppenderRef ref="main" level="INFO"/>
        </Logger>
    </Loggers>
</Configuration>

共有1个答案

张嘉佑
2023-03-14

我可以使用类似的配置来更改日志级别,甚至可以为日志配置一个模式:

# Set everything to be logged to the console
log4j.rootCategory=TRACE, console
log4j.appender.console=org.apache.log4j.ConsoleAppender
log4j.appender.console.target=System.err
log4j.appender.console.layout=org.apache.log4j.PatternLayout
log4j.appender.console.layout.ConversionPattern=%d{yy/MM/dd HH:mm:ss} %p %c{1}: %m%n

还可以设置每个类的日志级别,例如:

# Settings to quiet third party logs that are too verbose
log4j.logger.org.eclipse.jetty=WARN
log4j.logger.org.eclipse.jetty.util.component.AbstractLifeCycle=ERROR
log4j.logger.org.apache.spark.repl.SparkIMain$exprTyper=INFO
log4j.logger.org.apache.spark.repl.SparkILoop$SparkILoopInterpreter=INF
log4j.logger.org.apache.spark.sql.execution.streaming.FileStreamSource=TRACE
 类似资料:
  • 问题内容: 因此,我最近开始涉足OOP,到目前为止一切进展顺利。虽然我本身没有任何问题,但我希望有一个令人惊奇的功能,尽管我找不到关于该功能的任何文档。 在为对象分配属性时,我经常发现我必须更改依赖于他人的属性,例如光明与黑暗。这是一个例子: 现在,尽管这很酷,但我想要的是相同的过程,但是如果一个属性发生更改,则在同一对象内。如果我重置光的属性(是的),我希望黑暗相应地增加/减少。如果可以更改光的

  • 我如何在log4j2中做到这一点?注我仍然需要使用新的属性文件(不是xml或json)。 TIA

  • 我做了一个我能证明问题的最小项目: 背后的代码: Xaml: 编辑:Xaml现在包括我想在用户控件中排列的元素。 主窗口 Xaml: 这个想法是根据其布局属性设置 UserControl 的布局,因此我将两种布局都放在静态资源中,并制作了一个样式以根据类型为“方向”的布局将内容设置为我想要的内容。 编辑:我希望内容包含根据方向以不同顺序排列的元素。 用户控件显示正确,但输出窗口中有一个与我有关的错

  • 我有一个带有子组件的组件。 在时间轴组件中,我有这些属性: 如何检查何时从时间轴组件对属性进行更改?每当编辑值发生更改时,我都需要发出该值。 我应该为编辑属性使用一个setter,然后从那里发出吗? 或者有其他方法吗?

  • 总之 我需要更改spring boot的自动配置中定义的bean的属性值,该属性值不可从<code>应用程序进行配置。属性 描述的 我想更改Bean 的。根据文档,这不能在属性文件中进行更改。 http://docs.spring.io/spring-boot/docs/current/reference/html/common-application-properties.html 所以我做了一

  • 我一直在尝试更改用户日志的日志级别,即出现在