项目使用的日志系统是springboot自带的日志系统也就是logback。 从springboot的配置中配置好日志的配置路径
logging:
config: classpath:logback-spring.xml
写一个LoggerStartUpListener类继承ContextAwareBase实现LoggerContextListener接口
public class LoggerStartupListener extends ContextAwareBase implements LoggerContextListener {
private boolean started = false;
private String getPid() {
return ManagementFactory.getRuntimeMXBean().getName();
}
@Override
public boolean isResetResistant() {
return false;
}
@Override
public void onStart(LoggerContext loggerContext) {
if (started) {
return;
}
Context context = getContext();
context.putProperty("PID", getPid());
started = true;
}
@Override
public void onReset(LoggerContext loggerContext) {
}
@Override
public void onStop(LoggerContext loggerContext) {
}
@Override
public void onLevelChange(Logger logger, Level level) {
}
}
从logback-spring.xml中配置这个监听类就可以了,ps:记得包名换一下
<contextListener class="com.kingc.sgfxfxpt.standaloneparser.config.LoggerStartupListener"/>
然后从property中用${}的方式来调用这个pid端口号 例如
<property name="appName" value="standaloneparser${PID}"></property>