Wildfly 9.0.1-Final&每部署日志记录

时间:2015-11-29 16:19:36

标签: java logging jboss wildfly wildfly-9

我正在努力使每个部署的日志记录工作。我在logging.properties中有WEB-INF/的war存档,内容为:

ru.home.level=FINEST

在servlet中我做了:

protected Logger log = Logger.getLogger("ru.home.Something");

    @Override
    protected void doGet(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {
        log.log(Level.FINEST, "Hello");
        resp.getWriter().write("<b>tralalala</b>");
        log.log(Level.FINEST, "Bye");
    }

根据WildFly日志记录配置文档,它应该在适当的位置扫描并查找我的属性文件。但似乎它根本没有扫描。我究竟做错了什么? (https://docs.jboss.org/author/display/WFLY9/Logging+Configuration#LoggingConfiguration-PerdeploymentLogging) 也:

/subsystem=logging:read-attribute(name=use-deployment-logging-config)

返回:

{
    "outcome" => "success",
    "result" => true
}

1 个答案:

答案 0 :(得分:0)

看起来文档中存在错误。 WEB-INF/classes文件应位于logging.properties目录中。

此外,logging.properties文件的格式必须与JUL loggers=ru.home logger.level=INFO logger.handlers=FILE logger.ru.home.level=FINEST handler.FILE=org.jboss.logmanager.handlers.SizeRotatingFileHandler handler.FILE.level=ALL handler.FILE.formatter=PATTERN handler.FILE.properties=append,autoFlush,enabled,maxBackupIndex,rotateOnBoot,rotateSize,fileName handler.FILE.append=true handler.FILE.autoFlush=true handler.FILE.enabled=true handler.FILE.maxBackupIndex=10 handler.FILE.rotateOnBoot=false handler.FILE.rotateSize=52428800 handler.FILE.fileName=${jboss.server.log.dir}/myapp.log formatter.PATTERN=org.jboss.logmanager.formatters.PatternFormatter formatter.PATTERN.properties=pattern formatter.PATTERN.pattern=%d{yyyy-MM-dd HH\:mm\:ss,SSS} %-5p [%c] (%t) %s%e%n 文件略有不同。

示例:

{{1}}

还有一点需要注意的是,每个部署的日志记录不会从子系统继承任何配置。您需要在部署中完全配置日志记录。