antwortzeit-Middleware
Antwortzeit für Node.js Server.
Dieses Modul erstellt eine Middleware, die die Antwortzeit für Anfragen auf HTTP-Servern aufzeichnet. Die “Antwortzeit” wird hier als die abgelaufene Zeit definiert, ab der eine Anfrage diese Middleware eingibt, bis die Kopfzeilen an den Client geschrieben werden.
Installation
Dies ist ein Node.js Modul über die
npm Registry. Installation erfolgt mit dem
npm install Befehl:
$ npm install response-timeAPI
var responseTime = require('response-time');responseTime([options])
Erstelle eine Middleware, die Antworten einen X-Response-Time Header hinzufügt. Wenn
Sie dieses Modul nicht verwenden wollen, um automatisch einen Header zu setzen, schauen Sie bitte
in den Abschnitt über responseTime(fn).
Optionen
The responseTime function accepts an optional options object that may
contain any of the following keys:
digits
Die festgelegte Anzahl an Ziffern, die in der Ausgabe enthalten sein sollen, die immer in
Millisekunden ist, Standardwert ist 3 (z.B.: 2.300ms).
kopf
Der Name des zu setzenden Headers, standardmäßig X-Response-Time.
suffix
Boolean um anzugeben, ob Maßeinheiten des Suffix zu
der Ausgabe hinzugefügt werden sollen, Standardwert ist true (z.B.: 2.300ms vs 2.300).
responseTime(fn)
Erstellen Sie eine neue Middleware, die die Antwortzeit einer Anfrage aufzeichnet und
diese für Ihre eigene Funktion fn zur Verfügung stellt. Das fn Argument wird
als fn(req, res, time) aufgerufen, wobei time eine Zahl in Millisekunden ist.
Beispiele
ausdrucken/verbinden
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 Server
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!'); });});antwortzeit-Metriken
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!');});