課題
特に意識してなかったのですが、下記のように書いて、ログを出力すると、
index.js
const log4js = require('log4js');
const logger = log4js.getLogger();
logger.level = "debug";
logger.debug("hoge");
日付と時間の間にTが入っています。まあ、大した問題ではないのですが、ログの加工をするときに邪魔なので消したい。
[2018-05-12T17:24:17.873] [DEBUG] default - hoge
これは標準で、ISO8601が適用されているから・・・だそうです。
直す方法
log4js.configure()にてフォーマットを設定してやる必要があるようです。
index.js
const log4js = require('log4js');
const logger = log4js.getLogger();
//指定
log4js.configure({
    appenders: {
        out: {
            type: 'stdout', //コンソールに出力
            layout: {
                type: 'pattern',
                pattern: '%[[%d{yyyy-MM-dd hh:mm:ss.SSS}] [%p] %c -%] %m',
            }
        }
    },
    categories: {
        default: {
            appenders: ['out'],
            level: 'debug'
        }
    }
});
logger.level = "debug";
logger.debug("hoge");
そうするとTが消えました。
[2018-05-12 17:30:19.122] [DEBUG] default - hoge
fileに出力する時
ファイルに出力するときは、カラーブロック設定 %[ %]に意味がないので(たぶん)消します。
"pattern": "[%d{yyyy-MM-dd hh:mm:ss.SSS}] [%p] %c %m"
参考
パターン含めたlog4jsの利用方法はここが非常に参考になります。