ウィンストンはほとんどの開発者にとって強力な選択です。私は長い間ウィンストンを使用してきました。最近、私はアプリケーションロギングを次のレベルに引き上げるpapertrailでwinstonを使用しました。
ここに彼らのサイトからの素晴らしいスクリーンショットがあります。
その有用性
さまざまなシステムのログを1か所で管理できます。これは、2つのバックエンド通信があり、両方からのログを適切に表示できる場合に非常に役立ちます。
ログはライブです。本番サーバーのリアルタイムログを確認できます。
強力な検索とフィルター
ログで特定のテキストが検出された場合に電子メールを送信するアラートを作成できます。
そして、あなたはもっとhttp://help.papertrailapp.com/kb/how-it-works/event-viewer/を見つけることができます
簡単な構成で使用してwinston
、winston-express
およびwinston-papertrail
ノードモジュール。
import winston from 'winston';
import expressWinston from 'express-winston';
//
// Requiring `winston-papertrail` will expose
// `winston.transports.Papertrail`
//
require('winston-papertrail').Papertrail;
// create winston transport for Papertrail
var winstonPapertrail = new winston.transports.Papertrail({
host: 'logsX.papertrailapp.com',
port: XXXXX
});
app.use(expressWinston.logger({
transports: [winstonPapertrail],
meta: true, // optional: control whether you want to log the meta data about the request (default to true)
msg: "HTTP {{req.method}} {{req.url}}", // optional: customize the default logging message. E.g. "{{res.statusCode}} {{req.method}} {{res.responseTime}}ms {{req.url}}"
expressFormat: true, // Use the default Express/morgan request formatting. Enabling this will override any msg if true. Will only output colors with colorize set to true
colorize: true, // Color the text and status code, using the Express/morgan color palette (text: gray, status: default green, 3XX cyan, 4XX yellow, 5XX red).
ignoreRoute: function (req, res) { return false; } // optional: allows to skip some log messages based on request and/or response
}));
これが誰かがログを管理するのに役立つことを願っています!!