#233: Adding ability to put pid in log layout pattern

This commit is contained in:
j2ro 2014-08-20 10:11:44 +01:00 committed by Jethro
parent 8e5754371a
commit 44687e1bd1
2 changed files with 9 additions and 0 deletions

View File

@ -125,6 +125,7 @@ function messagePassThroughLayout (loggingEvent) {
* - %d date in various formats
* - %% %
* - %n newline
* - %z pid
* - %x{<tokenname>} add dynamic tokens to your log. Tokens are specified in the tokens parameter
* You can use %[ and %] to define a colored block.
*
@ -211,6 +212,10 @@ function patternLayout (pattern, tokens) {
return '%';
}
function pid() {
return process.pid;
}
function userDefined(loggingEvent, specifier) {
if (typeof(tokens[specifier]) !== 'undefined') {
if (typeof(tokens[specifier]) === 'function') {
@ -232,6 +237,7 @@ function patternLayout (pattern, tokens) {
'r': startTime,
'[': startColour,
']': endColour,
'z': pid,
'%': percent,
'x': userDefined
};

View File

@ -217,6 +217,9 @@ vows.describe('log4js layouts').addBatch({
'%h should output hostname' : function(args) {
test(args, '%h', os.hostname().toString());
},
'%z should output pid' : function(args) {
test(args, '%z', process.pid);
},
'%c should handle category names like java-style package names': function(args) {
test(args, '%c{1}', 'tests');
test(args, '%c{2}', 'of.tests');