Node.js+Bunyanでロガー固有の項目をログに出力する
ログを出力するには下のようなモジュールを利用する方法があります。
log
npmlog
bunyan
winston
log4js
この記事ではbunyan
モジュールを利用する方法を取り上げます。
bunyan
モジュールの基本的な使用方法に関しては下の記事を参照してください。
bunyanモジュール
ログを出力するには下のようなモジュールを利用する方法があります。 log npmlog bunyan winston log4js この記事ではbunyanモジュールを利用する方法を取り上げます。 ログのレベル 一般的に、ログにはレベルという属性があり、ログの重要さを表します。 bunyanモジュールの場
ロガー固有の項目
bunyan
モジュールでロガー固有の項目をログに出力するにはbunyan.createLogger
関数の第1引数のオプションに項目を指定します。
ただし、オプションと同じ名称の項目を指定することはできませんので注意してください。
var bunyan = require('bunyan');
var logger = bunyan.createLogger({
name: 'xxx',
foo: 'yyy',
bar: 'zzz'
});
ログの出力時にbunyan
モジュールが自動的にログを表すオブジェクトに付加するプロパティと同じ名称の項目を指定した場合には項目の方がログに出力されます。ただし、msg
プロパティとv
プロパティを除きます。
また、ログの出力時に項目と同じ名称のメタデータが指定された場合にはメタデータの方がログに出力されます。
サンプルコード1
bunyan-logger.js
var bunyan = require('bunyan');
var logger = bunyan.createLogger({
name: 'main',
foo: 100,
bar: 200,
hostname: 'host',
msg: '',
v: ''
});
logger.info('information.');
logger.info({ foo: 999 }, 'information 2.');
使用パッケージ
- Bunyan
npm install bunyan
でインストールします。
実行結果
C:\work\node>node bunyan-logger.js
{"name":"main","foo":100,"bar":200,"hostname":"host","msg":"information.","v":0,"pid":2364,"level":30,"time":"2016-08-21T00:54:09.367Z"}
{"name":"main","foo":999,"bar":200,"hostname":"host","msg":"information 2.","v":0,"pid":2364,"level":30,"time":"2016-08-21T00:54:09.367Z"}
関連

スポンサーリンク