tomcat默认的catalina.out无法分割,日积月累好几个G 分割日志是必要的,一般有两种方案
一、cronolog 这种需要改catalina.sh 不推荐
二、配置log4j2 推荐使用
准备jar
log4j2 采用2.18.0
log4j-1.2-api、log4j-api、log4j-core
tomcat-juli.jar、tomcat-juli-adapters.jar
1、删除conf/logging.properties
2、替换bin/tomcat-juli.jar
3、复制logj4.*.jar、tomcat-juli-adapters.jar 到lib/
4、lib/ 目录新增log4j2.xml 想要输出什么样的格式,自己改,下面就是个样例
<?xml version="1.0" encoding="UTF-8"?>
<Configuration status="INFO" monitorInterval="30">
<Properties>
<Property name="CATALINA_BASE_LOGPATH">../logs</Property>
</Properties>
<Appenders>
<Console name="CONSOLE" target="SYSTEM_OUT">
<patternLayout charset="UTF-8" pattern="%d{yyyy-MM-dd HH:mm:ss,SSS}#%p#%t#%c#%C{1}#%F#%M#%L#%r#%m%n" />
</Console>
<RollingFile name="CATALINA" fileName="${CATALINA_BASE_LOGPATH}/catalina.log"
filePattern="${CATALINA_BASE_LOGPATH}/$${date:yyyy-MM}/catalina-%d{yyyy-MM-dd}-%i.log.gz">
<patternLayout charset="UTF-8" pattern="%d{yyyy-MM-dd HH:mm:ss,SSS}#%p#%t#%c#%C{1}#%F#%M#%L#%r#%m%n" />
<policies>
<timeBasedTriggeringPolicy />
<SizeBasedTriggeringPolicy size="100 MB"/>
</policies>
<DefaultRolloverStrategy fileIndex="min" max="20"/>
</RollingFile>
<RollingFile name="LOCALHOST" fileName="${CATALINA_BASE_LOGPATH}/localhost.log"
filePattern="${CATALINA_BASE_LOGPATH}/localhost.%date{yyyy-MM-dd}.%i.log" append="true" immediateFlush="true">
<patternLayout charset="UTF-8" pattern="%d{yyyy-MM-dd HH:mm:ss,SSS}#%p#%t#%c#%C{1}#%F#%M#%L#%r#%m%n" />
<policies>
<timeBasedTriggeringPolicy />
<SizeBasedTriggeringPolicy size="100 MB"/>
</policies>
<DefaultRolloverStrategy fileIndex="min" max="20"/>
</RollingFile>
<RollingFile name="MANAGER" fileName="${CATALINA_BASE_LOGPATH}/manager.log"
filePattern="${CATALINA_BASE_LOGPATH}/manager.%date{yyyy-MM-dd}.%i.log" append="true" immediateFlush="true">
<patternLayout charset="UTF-8" pattern="%d{yyyy-MM-dd HH:mm:ss,SSS}#%p#%t#%c#%C{1}#%F#%M#%L#%r#%m%n" />
<policies>
<timeBasedTriggeringPolicy />
<SizeBasedTriggeringPolicy size="100 MB"/>
</policies>
<DefaultRolloverStrategy fileIndex="min" max="20"/>
</RollingFile>
<RollingFile name="HOST-MANAGER" fileName="${CATALINA_BASE_LOGPATH}/host-manager.log"
filePattern="${CATALINA_BASE_LOGPATH}/host-manager.%date{yyyy-MM-dd}.%i.log" append="true" immediateFlush="true">
<patternLayout charset="UTF-8" pattern="%d{yyyy-MM-dd HH:mm:ss,SSS}#%p#%t#%c#%C{1}#%F#%M#%L#%r#%m%n" />
<policies>
<timeBasedTriggeringPolicy />
<SizeBasedTriggeringPolicy size="100 MB"/>
</policies>
<DefaultRolloverStrategy fileIndex="min" max="20"/>
</RollingFile>
</Appenders>
<Loggers>
<Logger name="org.apache.catalina.core.ContainerBase.[Catalina].[localhost]" level="INFO" additivity="false">
<appender-ref ref="LOCALHOST" />
</Logger>
<Logger name="org.apache.catalina.core.ContainerBase.[Catalina].[localhost].[/manager]" level="INFO" additivity="false">
<appender-ref ref="MANAGER" />
</Logger>
<Logger name="org.apache.catalina.core.ContainerBase.[Catalina].[localhost].[/host-manager]" level="INFO" additivity="false">
<appender-ref ref="HOST-MANAGER" />
</Logger>
<Root level="INFO" additivity="false">
<AppenderRef ref="CONSOLE" level="INFO"/>
<AppenderRef ref="CATALINA" level="INFO"/>
</Root>
</Loggers>
</Configuration>