Skip to content

Latest commit

 

History

History
65 lines (47 loc) · 1.58 KB

README.md

File metadata and controls

65 lines (47 loc) · 1.58 KB

express-status-monitor

Simple, self-hosted module based on Socket.io and Chart.js to report realtime server metrics for Express-based node servers.

Koa.js version of this library.

More Node frameworks coming soon.

Monitoring Page

Installation & setup

  1. Run npm install express-status-monitor --save
  2. Before any other middleware or router add following line: app.use(require('express-status-monitor')());
  3. Run server and go to /status

Run examples

  1. Go to cd examples/
  2. Run npm i
  3. Run server npm start
  4. Go to http://0.0.0.0:3000

Options

Monitor can be configured by passing options object into expressMonitor constructor.

Default config:

title: 'Express Status',  // Default title
path: '/status',
spans: [{
  interval: 1,            // Every second
  retention: 60           // Keep 60 datapoints in memory
}, {
  interval: 5,            // Every 5 seconds
  retention: 60
}, {
  interval: 15,           // Every 15 seconds
  retention: 60
}]

Securing endpoint

Example using https://www.npmjs.com/package/connect-ensure-login

const ensureLoggedIn = require('connect-ensure-login').ensureLoggedIn()

app.get('/status', ensureLoggedIn, require('express-status-monitor')())

Credits to @mattiaerre

Tests and coverage

In order to run test and coverage use the following npm commands:

npm test
npm run coverage

License

MIT License © Rafal Wilinski