log-filterでサーバ出力を勝手フィルタリング
2015年2月23日
Webサーバのログ出力が激し過ぎて静かさせたい時に、勝手にフィルタリングできるものを作りました。
例えば、npm start でサーバを起動するとして、こんな風に使います:
(!API変わりました、追記確認願います)
$ npm install -g log-filter $ export=NODE_LOG_FILTER_NOT='^(debug|info|log): ' $ npm start | log-filter
フィルタリングルールは、NODE_LOG_FILTER_NOT または NODE_LOG_FILTER 環境変数へ正規表現を格納する形で指定します。
上記の例だと、先頭が ‘debug: ‘ or ‘info: ‘ or ‘log: ‘ のログ以外が出力対象になります。
追記
2.0へアップデートし、環境変数を使うのを止めてコマンドオプションにしました。
Usage:
log-filter [--contain -c KEYWORD] [--match -m REG_EXP] [--not -n]
Examples:
echo 'warn: It is warning' | log-filter --contain warn warn: It is warning echo 'warn: It is warning' | log-filter --match '(warn|error)' warn: It is warning echo 'warn: It is warning' | log-filter --contain error --not warn: It is warning
詳細は README へ。
以上
そもそもログ減らせ、って点については、お察し下さい。