responsetime-middleware
Node.js サーバーの応答時間。
このモジュールは、HTTPサーバーで リクエストの応答時間を記録するミドルウェアを作成します。 The “response time” is defined here as the elapsed time from when a request enters this middleware to when the headers are written out to the client.
インストール
これは、 Node.js モジュールで、
npm registry を介して利用できます。 インストールは
npm install コマンド:
$ npm install response-timeAPI
var responseTime = require('response-time');responseTime([options])
レスポンスに X-Response-Time ヘッダーを追加するミドルウェアを作成します。
このモジュールを使用してヘッダーを自動的に設定したくない場合は、
responseTime(fn)に関するセクションを参照してください。
オプション
The responseTime function accepts an optional options object that may
contain any of the following keys:
digits
出力に含める固定桁数は常に
ミリ秒です。デフォルトは3(例:2.300ms)です。
ヘッダー
設定されるヘッダーの名前はデフォルトで X-Response-Time になります。
suffix
ブール値は、出力の単位を
に追加するかどうかを示します。デフォルトは true (例: 2.300ms vs 2.300)。
responseTime(fn)
リクエストの応答時間を記録する新しいミドルウェアを作成し、
が関数fnで利用できるようにします。 The fn argument will be
invoked as fn(req, res, time), where time is a number in milliseconds.
例
エクスプレス/接続
var express = require('express');var responseTime = require('response-time');
var app = express();
app.use(responseTime());
app.get('/', function (req, res) { res.send('hello, world!');});vanilla http サーバー
var finalhandler = require('finalhandler');var http = require('http');var responseTime = require('response-time');
// create "middleware"var _responseTime = responseTime();
http.createServer(function (req, res) { var done = finalhandler(req, res); _responseTime(req, res, function (err) { if (err) return done(err);
// respond to request res.setHeader('content-type', 'text/plain'); res.end('hello, world!'); });});レスポンスタイムメトリック
var express = require('express');var responseTime = require('response-time');var StatsD = require('node-statsd');
var app = express();var stats = new StatsD();
stats.socket.on('error', function (error) { console.error(error.stack);});
app.use( responseTime(function (req, res, time) { var stat = (req.method + req.url).toLowerCase().replace(/[:.]/g, '').replace(/\//g, '_'); stats.timing(stat, time); }));
app.get('/', function (req, res) { res.send('hello, world!');});