@jeremistadler/express-elasticsearch-logger
v6.0.8
Published
Log Express app requests to ElasticSearch.
Maintainers
Readme
express-elasticsearch-logger

Log Express app requests to ElasticSearch.
Installation
Install using npm:
npm install express-elasticsearch-loggerAPI Reference
Members
##logger.request
Document indexed with ElasticSearch. request and response properties
are included if they are whitelisted by config.whitelist.
Properties
- env
String- defaults to "development" - error
Error- error object passed tonext() - duration
Number- milliseconds between request and response - request
Object- request.httpVersion
String - request.headers
Object - request.method
String - request.originalUrl
String - request.route.path
String - request.path
String - request.query
Object
- request.httpVersion
- response
Object- response.statusCode
Number
- response.statusCode
- os
Object- os.totalmem
Number- OS total memory in bytes - os.freemem
Number- OS free memory in bytes - os.loadavg
Array.<Number>- Array of 5, 10, and 15 min averages
- os.totalmem
- process
Object- process.memoryUsage
Number- process memory in bytes
- process.memoryUsage
- @timestamp
String- ISO time of request
Type: Object
##logger.requestHandler(config, [client])
Returns Express middleware configured according to given options.
Middleware must be mounted before all other middleware to ensure accurate capture of requests. The error handler must be mounted before other error handler middleware.
Params
- config
Object- elasticsearch configuration- [index]
String- elasticsearch index (default: log_YEAR_MONTH) - [type]
String- elasticsearch request type (default: request) - whitelist
Object- request
Array.<String>- request properties to log - response
Array.<String>- response properties to log
- request
- censor
Array.<String>- list of request body properties to censor
- [index]
- [client]
elasticsearch.Client- elasticsearch client
Returns: elasticsearchLoggerMiddleware - express middleware
Example
var express = require('express');
var logger = require('express-elasticsearch-logger');
var app = express();
app
.use(logger.requestHandler({
host: 'http://localhost:9200'
}))
.get('/', function (req, res, next) {
res.sendStatus(204);
})
.use(logger.errorHandler)
.listen(8888);
##logger.errorHandler(err, req, res, next)
Error handler middleware exposes error to Response#end
This middleware is used in combination with requestHandler to capture request errors.
Params
- err
Error - req
express.Request - res
express.Response - next
express.Request.next
Contributing
Please submit all issues and pull requests to the alexmingoia/express-elasticsearch-logger repository!
Tasks
List available tasks with gulp help.
Tests
Run tests using npm test or gulp test.
Support
If you have any problem or suggestion please open an issue here.
