默认情况下,JBoss EAP 7每天轮换其访问日志。 我需要将其设置为喜欢,只需要。
原因:
我所知道的是,在 standalone.xml 中,我尝试添加以下内容以使JBoss 服务器日志每小时轮换一次。
<suffix value=".yyyy-MM-dd-HH"/>
但是这种方法不适用于访问日志(因为它的设置奇怪地放在standalone.xml的不同部分)
我尝试过使用access-log
标签进行以下任何操作。但它只会引发错误。
<access-log suffix=".yyyy-MM-dd-HH" ...
<access-log rotate="hourly" ...
...而且我似乎无法找到关于JBoss EAP 7的 standalone.xml 的非常详细的指南。我认为我应该使用标记值access-log
部分。
请帮忙。有谁知道这样做的方法? :(
系统规格
谢谢和最诚挚的问候。
答案 0 :(得分:0)
尝试以下
<subsystem xmlns="urn:jboss:domain:logging:3.0">
...(snip)...
<!-- size-based log rotation -->
<size-rotating-file-handler name="access-log" autoflush="true">
<formatter>
<named-formatter name="access-log-formatter"/>
</formatter>
<file relative-to="jboss.server.log.dir" path="access.log"/>
<rotate-size value="10m"/>
<max-backup-index value="10"/>
<append value="true"/>
</size-rotating-file-handler>
<! -- or custom interval (hourly) log rotation
<periodic-rotating-file-handler name="access-log-custom" autoflush="true">
<formatter>
<named-formatter name="access-log-formatter"/>
</formatter>
<file relative-to="jboss.server.log.dir" path="access.log"/>
<suffix value=".yyyy-MM-dd-HH"/>
<append value="true"/>
</periodic-rotating-file-handler>
--->
...(snip)...
<logger category="io.undertow.accesslog" use-parent-handlers="false">
<handlers>
<handler name="access-log"/>
</handlers>
</logger>
...(snip)...
<formatter name="access-log-formatter">
<pattern-formatter pattern="%s%n"/>
</formatter>
</subsystem>
...(snip)...
<subsystem xmlns="urn:jboss:domain:undertow:3.1" statistics-enabled="true">
...(snip)...
<server name="default-server">
<http-listener name="default" socket-binding="http" redirect-socket="https" record-request-start-time="true"/>
<host name="default-host" alias="localhost">
...(snip)...
<access-log use-server-log="true" pattern="%h %l %u %t "%r" %s %b "%{i,Referer}" "%{i,User-Agent}" "%{i,COOKIE}" "%{o,SET-COOKIE}" %S "%I" %T"/>
...(snip)...
</host>
</server>
...(snip)...
</subsystem>