8000
Skip to content 8000

soyuka/express-status-monitor

ย 
ย 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

ย 

History

136 Commits
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 

Repository files navigation

express-status-monitor

Gitter express-status-monitor on npm bitHound Overall Score

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

Monitoring Page

Demo

Demo available here

Support for other Node.js frameworks

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

Example using http-auth

const auth = require('http-auth');
const basic = auth.basic({realm: 'Monitor Area'}, function(user, pass, callback) {
  callback(user === 'username' && pass === 'password');
});

app.get('/status', auth.connect(basic), require('express-status-monitor')());

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

About

๐Ÿš€ Realtime Monitoring solution for Express.js apps, inspired by status.github.com

Resources

License

Code of conduct

Security policy

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors

Languages

  • JavaScript 84.5%
  • HTML 10.1%
  • CSS 5.4%
0