Just as an idea, you could push the process ID onto the NDC (or MDC) after you fork(), then display it with %x (or %X) in your pattern.
-David [EMAIL PROTECTED] P.S. For anyone who knows: Looking at the documentation for MDC, why does the C++ log4cxx MDC require JDK 1.2? Is that mistakenly copied from log4j? -----Original Message----- From: Dizzy [mailto:[EMAIL PROTECTED] Sent: Tuesday, June 13, 2006 7:50 AM To: log4cxx-user@logging.apache.org Subject: how to get the process ID from PatternLayout Hi I am using log4cxx for some multithreaded AND multiprocess programs (I fork() on big operations, I spawn thread using boost::thread on per operation tasks). For threads "%t" seems to work fine as it uniquely identifies the thread but for processes it seems that "%t" displays the same thing for all processes forked from the same parent, like I have this output from a test program: $ ./log4cxxtest DEBUG 2006-06-13 11:31:26,455 (2812696064 testApp) message1 DEBUG 2006-06-13 11:31:26,457 (2812693424 testApp) newthread: message2 DEBUG 2006-06-13 11:31:26,457 (2812696064 testApp) oldthread: message2 DEBUG 2006-06-13 11:31:26,458 (2812696064 testApp) child: message3 DEBUG 2006-06-13 11:31:26,458 (2812696064 testApp) parent: message3 Where 2812696064 and 2812693424 are what %t displays. So... how can I display something to identify the process using PatternLayout ? Thanks! -- Mihai RUSU Email: [EMAIL PROTECTED] GPG : http://dizzy.roedu.net/dizzy-gpg.txt WWW: http://dizzy.roedu.net "Linux is obsolete" -- AST