Exciting release!Introducing "safe npm". Learn more
Socket
Log inDemoInstall

express-mw-correlation-id

Package Overview
Dependencies
1
Maintainers
3
Versions
8
Issues
File Explorer

Advanced tools

express-mw-correlation-id

express middleware that correlates HTTP requests between a client and server

    5.2.0latest
    GitHub

Version published
Maintainers
3
Weekly downloads
584
decreased by-11.78%

Weekly downloads

Readme

Source

express-mw-correlation-id

Correlates HTTP requests between a client and server

Build StatusCode Coverage 100%ISC LicenseNodeJS

JavaScript Style Guide

api

const setCorrelationId = require('express-mw-correlation-id')

**setCorrelationId([string, defaults to X-Request-ID], [formatter=identity])

  • by default will use the X-Request-ID header but to use a custom header instead just pass the name in the first parameter
  • formatter is a function that will add custom formats to the generated ID, being, by default, the generated ID.
  • the middleware will reuse the request id if already present in the request headers

req.id now is expose to be used internally by the api/service is using the express-mw-correlation-id middleware

examples

const express = require('express') const setCorrelationId = require('express-mw-correlation-id') const app = express() app.use(setCorrelationId()) // `req.id` hold the correlation/request id app.get('/', (req, res) => { res.send(req.id) }) app.listen(3000)
Custom ID
app.use(setCorrelationId('X-Custom-ID'))
Custom ID and custom format
app.use(setCorrelationId('X-Custom-ID', (id) => id))
Custom format
app.use(setCorrelationId((id) => id))

client

curl -v http://localhost:3000 * Rebuilt URL to: http://localhost:3000/ * Trying ::1... * Connected to localhost (::1) port 3000 (#0) > GET / HTTP/1.1 > Host: localhost:3000 > User-Agent: Mozilla/5.0 (compatible; MSIE 9.0; Windows NT 6.1; Trident/5.0) > Accept: */* > Referer: > < HTTP/1.1 200 OK < X-Powered-By: Express < X-Request-ID: 825efe65-a27d-4dca-936b-e74249095fb7 < Content-Type: text/html; charset=utf-8 < Content-Length: 11 < ETag: W/"b-sQqNsWTgdUEFt6mb5y4/5Q" < Date: Thu, 08 Dec 2016 10:22:44 GMT < Connection: keep-alive < * Connection #0 to host localhost left intact 825efe65-a27d-4dca-936b-e74249095fb7

X-Request-ID should come with the headers

ISC License (ISC)

Keywords

FAQs

Last updated on 04 Mar 2020

Did you know?

Socket installs a Github app to automatically flag issues on every pull request and report the health of your dependencies. Find out what is inside your node modules and prevent malicious activity before you update the dependencies.

Install Socket
Socket
support@socket.devSocket SOC 2 Logo

Product

  • Package Issues
  • Integrations
  • Docs
  • Pricing
  • FAQ
  • Roadmap

Stay in touch

Get open source security insights delivered straight into your inbox.


  • Terms
  • Privacy
  • Security

Made with ⚡️ by Socket Inc