我正在使用log4cxx我的项目,我能够使用[%t]标记记录当前线程ID,如何在其中记录进程ID或log4j?.
我正在使用基于ConversionPattern和xml的配置文件.
谢谢,
ski*_*ppy 12
基于以上答案,我将在log4j中执行以下操作:
import java.lang.management.*;
import org.apache.log4j.MDC;
private String getPID() {
RuntimeMXBean rt = ManagementFactory.getRuntimeMXBean();
return rt.getName();
}
private void configLog4j() {
// call this from somewhere before you start logging
MDC.put("PID", getPID());
}
Run Code Online (Sandbox Code Playgroud)
然后在我的log4j.properties中:
log4j.appender.FILE.layout.ConversionPattern=%d %X{PID} [%t] %p %c{1} %x - %m%n
Run Code Online (Sandbox Code Playgroud)
这实际上会产生一个由ID号和主机名组成的PID,至少在我的Java实现上,以及我读到的可能是特定于实现的内容.你可以更进一步,只拆分PID.
| 归档时间: |
|
| 查看次数: |
9914 次 |
| 最近记录: |