需求: 记录日志时需要添加服务IP和服务编号(由UUID生成),便于运维人员在查看日志时定位到哪台服务器上的哪个服务。
基于spring web项目
1、 log4j2.xml文件
<?xml version="1.0" encoding="UTF-8"?>
<Configuration status="error" monitorInterval="30">
<Properties>
<!-- 配置日志文件输出目录 -->
<Property name="LOG_HOME">/home/logs</Property>
</Properties>
<Appenders>
<Console name="CONSOLE" target="SYSTEM_OUT">
<PatternLayout pattern="%d{yyyy-MM-dd HH:mm:ss.SSS} %-5level %class{1.}:%L - IP:%X{ip}&ID:%X{UUID} %msg%xEx%n" />
</Console>
<!-- 按天第天备份一个日志 -->
<RollingFile name="FILE" fileName="${LOG_HOME}/demo.log"
filePattern="${LOG_HOME}/demo.log.%d{yyyy-MM-dd}.log.gz">
<PatternLayout pattern="%d{yyyy-MM-dd HH:mm:ss.SSS} %-5level %class{1.}:%L - %X{ip}&ID:%X{UUID} %msg%xEx%n" />
<Policies>
<!-- 每24小时更新一次 -->
<TimeBasedTriggeringPolicy modulate="true"
interval="24" />
<SizeBasedTriggeringPolicy size="128KB" />