我是一个相当初级的开发人员,试图在我的代码中实现Logging-Profiles,以便不同的组件可以使用不同的日志记录级别。但是,这似乎不起作用。有两个关键问题:
调整日志记录级别似乎对某些组件产生的内容没有影响 我已经更新了MANIFEST.MF,使其包含“配置文件”,它似乎可以识别并将一些条目发布到日志文件中,但是它似乎在很大程度上取决于根级别,而不是每个类别。 特定的软件包日志级别似乎不起作用
某些条目在同一行上返回,我该如何解决呢?我似乎在网上找不到相同问题的任何内容
10:23:18,047信息[标准输出](genericClass-20)10:23:18.047 [genericClass-20]错误 org.hibernate.engine.jdbc.spi.SqlExceptionHelper- javax.resource.ResourceException:IJ000453:无法得到管理 Java连接
这是我的独立版中的内容:
<logging-profiles>
<logging-profile name="profile">
<size-rotating-file-handler name="SIZE" autoflush="true">
<file relative-to="jboss.server.log.dir" path="profile.log"/>
<rotate-size value="30m"/>
<max-backup-index value="99"/>
<append value="true"/>
</size-rotating-file-handler>
<logger category="com.myproject" use-parent-handlers="false">
<level name="DEBUG"/>
<handlers>
<handler name="SIZE"/>
</handlers>
</logger>
<logger category="org.apache" use-parent-handlers="false">
<level name="INFO"/>
<handlers>
<handler name="SIZE"/>
</handlers>
</logger>
<logger category="org.hibernate" use-parent-handlers="false">
<level name="INFO"/>
<handlers>
<handler name="SIZE"/>
</handlers>
</logger>
<logger category="org.springframework" use-parent-handlers="false">
<level name="INFO"/>
<handlers>
<handler name="SIZE"/>
</handlers>
</logger>
<root-logger>
<level name="INFO"/>
<handlers>
<handler name="SIZE"/>
</handlers>
</root-logger>
</logging-profile>
</logging-profiles>
答案 0 :(得分:0)
查看配置,至少应该在com.myproject
文件中获得profile.log
日志。您可能不会在该文件中获得任何org.hibernate
日志,因为任何全局模块都将始终记录为默认系统日志配置。
最后,我认为您不需要日志配置文件就可以使其正常工作。您只需要在日志子系统上定义size-rotating-file-handler
和com.myproject
处理程序。以下是您要用于配置日志记录子系统的CLI命令
/subsystem=logging/size-rotating-file-handler=SIZE:add(autoflush=true, append=true, rotate-size="30m", max-backup-index=99, file={relative-to="jboss.server.log.dir", path="profile.log"})
/subsystem=logging/logger=com.myproject:add(level=DEBUG)
/subsystem=logging/root-logger=ROOT:add-handler(name=SIZE)
鉴于默认配置以及这些命令,所有消息都将记录到默认控制台和文件处理程序以及SIZE
处理程序中。默认文件处理程序和您的SIZE
处理程序都会从com.myproject
获取调试消息。