如何配置 WildFly 8.2.0 日志记录以仅在调试级别显示应用程序
How to configure WildFly 8.2.0 logging to show JUST the application on debug level
对于这个非常基本的问题,我深表歉意,但我花了很多时间和研究,但无法让它发挥作用:-/
我想要的:在 INFO 级别显示所有日志记录,但在 DEBUG 级别显示我的应用程序。到目前为止,我的设置和理解是:
在我的 WildFly 中,我使用带有 logback 的 slf4j。我根本没有配置 logback b/c 这是在 WildFly 配置中完成的。
这是我的 pom:
<dependency>
<groupId>org.slf4j</groupId>
<artifactId>slf4j-api</artifactId>
<version>1.7.13</version>
</dependency>
<dependency>
<groupId>ch.qos.logback</groupId>
<artifactId>logback-classic</artifactId>
<version>1.0.13</version>
</dependency>
这是我的记录器配置:
<console-handler name="CONSOLE">
<level name="DEBUG"/>
<formatter>
<named-formatter name="COLOR-PATTERN"/>
</formatter>
</console-handler>
<periodic-rotating-file-handler name="FILE" autoflush="true">
<formatter>
<named-formatter name="PATTERN"/>
</formatter>
<file relative-to="jboss.server.log.dir" path="server.log"/>
<suffix value=".yyyy-MM-dd"/>
<append value="true"/>
</periodic-rotating-file-handler>
<logger category="com.arjuna">
<level name="WARN"/>
</logger>
<logger category="org.apache.tomcat.util.modeler">
<level name="WARN"/>
</logger>
<logger category="org.jboss.as.config">
<level name="DEBUG"/>
</logger>
<logger category="sun.rmi">
<level name="WARN"/>
</logger>
<logger category="jacorb">
<level name="WARN"/>
</logger>
<logger category="org.hibernate">
<level name="INFO"/>
</logger>
<logger category="javax">
<level name="INFO"/>
</logger>
<logger category="com.sample.application" use-parent-handlers="false">
<level name="DEBUG"/>
<handlers>
<handler name="CONSOLE"/>
</handlers>
</logger>
<root-logger>
<level name="DEBUG"/>
<handlers>
<handler name="CONSOLE"/>
<handler name="FILE"/>
</handlers>
</root-logger>
因此处理程序和根记录器必须保持调试状态,否则调试级别的日志将无法通过。但是其他一切,例如[org.jboss.as.controller.management-operation] 也在调试级别上通过,我无法手动将所有内容设置为 INFO 级别。我哪里错了?提前致谢!
将 console-handler
级别保留在 DEBUG
,将 root-logger
级别更改回 INFO
,只需将您的应用程序记录器更改为
<logger category="com.sample.application">
<level name="DEBUG"/>
</logger>
对于这个非常基本的问题,我深表歉意,但我花了很多时间和研究,但无法让它发挥作用:-/ 我想要的:在 INFO 级别显示所有日志记录,但在 DEBUG 级别显示我的应用程序。到目前为止,我的设置和理解是:
在我的 WildFly 中,我使用带有 logback 的 slf4j。我根本没有配置 logback b/c 这是在 WildFly 配置中完成的。 这是我的 pom:
<dependency>
<groupId>org.slf4j</groupId>
<artifactId>slf4j-api</artifactId>
<version>1.7.13</version>
</dependency>
<dependency>
<groupId>ch.qos.logback</groupId>
<artifactId>logback-classic</artifactId>
<version>1.0.13</version>
</dependency>
这是我的记录器配置:
<console-handler name="CONSOLE">
<level name="DEBUG"/>
<formatter>
<named-formatter name="COLOR-PATTERN"/>
</formatter>
</console-handler>
<periodic-rotating-file-handler name="FILE" autoflush="true">
<formatter>
<named-formatter name="PATTERN"/>
</formatter>
<file relative-to="jboss.server.log.dir" path="server.log"/>
<suffix value=".yyyy-MM-dd"/>
<append value="true"/>
</periodic-rotating-file-handler>
<logger category="com.arjuna">
<level name="WARN"/>
</logger>
<logger category="org.apache.tomcat.util.modeler">
<level name="WARN"/>
</logger>
<logger category="org.jboss.as.config">
<level name="DEBUG"/>
</logger>
<logger category="sun.rmi">
<level name="WARN"/>
</logger>
<logger category="jacorb">
<level name="WARN"/>
</logger>
<logger category="org.hibernate">
<level name="INFO"/>
</logger>
<logger category="javax">
<level name="INFO"/>
</logger>
<logger category="com.sample.application" use-parent-handlers="false">
<level name="DEBUG"/>
<handlers>
<handler name="CONSOLE"/>
</handlers>
</logger>
<root-logger>
<level name="DEBUG"/>
<handlers>
<handler name="CONSOLE"/>
<handler name="FILE"/>
</handlers>
</root-logger>
因此处理程序和根记录器必须保持调试状态,否则调试级别的日志将无法通过。但是其他一切,例如[org.jboss.as.controller.management-operation] 也在调试级别上通过,我无法手动将所有内容设置为 INFO 级别。我哪里错了?提前致谢!
将 console-handler
级别保留在 DEBUG
,将 root-logger
级别更改回 INFO
,只需将您的应用程序记录器更改为
<logger category="com.sample.application">
<level name="DEBUG"/>
</logger>