最近接手了一个流传很多手的魔性古早代码,追日志时发现有明显缺失.对log4j不熟,不过可以猜测日志出问题肯定和多进程使用同一个log4j配置有关.经多次排查,终于捋清了其中逻辑.本文对排查过程进行复盘. 一.表征 故事背景:项目有多个入口.一边即以持续运行获取消息的后台进程形式运行,一边又作为单次任务调度的普通进程被不断启动并结束退出.也就是说,同一个项目同时运行着多个进程,并且使用着同一个log4j配置. 下面称后台进程为进程A,普通进程为进程B.A在后台持续运行,B多次短暂执行. |<---