I 使用 log4j2
.我的配置如下所示:
<?xml version="1.0" encoding="UTF-8" ?>
<Configuration status="warn">
<Properties>
<Property name="pattern">{%X{taskId}} %date{yyyy-MM-dd HH:mm:ss.SSS} %level %M(%F:%L) - %msg%n</Property>
<Property name="folder">logs</Property>
<Property name="info-filename">test</Property>
<Property name="error-filename">test-error</Property>
</Properties>
<Appenders>
<RollingFile name="file" fileName="${folder}/${info-filename}.log" filePattern="${folder}/$${date:yyyy-MM-dd}/${info-filename}-%d{yyyy-dd-MM}.%i.log.gz">
<PatternLayout pattern="${pattern}" />
<Policies>
<SizeBasedTriggeringPolicy size="4 GB" />
<TimeBasedTriggeringPolicy />
</Policies>
<DefaultRolloverStrategy max="999999"/>
</RollingFile>
<Console name="console" target="SYSTEM_OUT">
<PatternLayout pattern="${pattern}" />
</Console>
<RollingFile name="file-error" fileName="${folder}/${error-filename}.log" filePattern="${folder}/$${date:yyyy-MM-dd}/${error-filename}-%d{yyyy-dd-MM}.%i.log.gz">
<PatternLayout pattern="${pattern}" />
<Policies>
<SizeBasedTriggeringPolicy size="4 GB" />
<TimeBasedTriggeringPolicy />
</Policies>
<DefaultRolloverStrategy max="999999"/>
</RollingFile>
</Appenders>
<Loggers>
<Root level="trace">
<AppenderRef ref="file"/>
<AppenderRef ref="file-error" level="error" />
</Root>
<Logger name="org.apache.http" level="error">
<AppenderRef ref="file-error" level="error" />
</Logger>
<Logger name="org.springframework.ws.client" level="error">
<AppenderRef ref="file-error" level="error" />
</Logger>
</Loggers>
</Configuration>
我希望使用权限创建文件夹logs
及其附加的所有文件 rw-rw-r--
.此外,对于组和所有者,与启动程序的用户相同。如何配置我的log4j2
来执行此操作?
Log4j2 自 2.9.0 起支持以下功能:https://issues.apache.org/jira/browse/LOG4J2-1699
您可以对元素RollingFile
使用其他属性,例如
<RollingFile ... filePermissions="rw-rw-r--">