mic*_*key 8 java configuration logging java.util.logging wildfly
突然(工作正常一段时间后),WildFly 9.0.1(以及9.0.2)似乎以某种方式丢失了用于记录的CONSOLE处理程序.
尝试从NetBeans 8.0.2调试应用程序时,控制台窗口显示:ERROR [stderr](默认任务-14)处理程序java.util.logging.ConsoleHandler未定义为最后一个条目,并且Web应用程序似乎卡住了(在实际开始之前).
在WildFly的管理控制台中,似乎有一个使用2个处理程序的根记录器:CONSOLE和FILE.两个处理程序似乎都存在于standalone-full.xml中:
...
<subsystem xmlns="urn:jboss:domain:logging:3.0">
<console-handler name="CONSOLE">
<level name="INFO"/>
<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>
...
<root-logger>
<level name="INFO"/>
<handlers>
<handler name="CONSOLE"/>
<handler name="FILE"/>
</handlers>
</root-logger>
...
</subsystem>
...
Run Code Online (Sandbox Code Playgroud)
在管理控制台中更改配置时,我可以从根记录器中删除处理程序.然后我可以保存,但再次接受它们似乎是不可能的,因为我得到WFLYCTL0158,告诉处理程序不会被定义.
JBoss 知识库表示,如果您使用应用程序框架,则应该确保目录中存在正确的 jar(在这种情况logback-classic-1.1.9.jar下logback-core-1.1.9.jar) 。WEB-INF/lib
对于那些无法访问上面的链接并想知道下一步是什么的人,您可以添加以下内容pom.xml以使其与您的应用程序框架配合使用,然后应用程序框架将WEB-INF/lib在构建过程中将其添加到其中。
<dependency>
<groupId>ch.qos.logback</groupId>
<artifactId>logback-classic</artifactId>
<version>1.2.3</version>
</dependency>
<dependency>
<groupId>ch.qos.logback</groupId>
<artifactId>logback-core</artifactId>
<version>1.2.3</version>
</dependency>
Run Code Online (Sandbox Code Playgroud)