npm package discovery and stats viewer.

Discover Tips

  • General search

    [free text search, go nuts!]

  • Package details

    pkg:[package-name]

  • User packages

    @[username]

Sponsor

Optimize Toolset

I’ve always been into building performant and accessible sites, but lately I’ve been taking it extremely seriously. So much so that I’ve been building a tool to help me optimize and monitor the sites that I build to make sure that I’m making an attempt to offer the best experience to those who visit them. If you’re into performant, accessible and SEO friendly sites, you might like it too! You can check it out at Optimize Toolset.

About

Hi, 👋, I’m Ryan Hefner  and I built this site for me, and you! The goal of this site was to provide an easy way for me to check the stats on my npm packages, both for prioritizing issues and updates, and to give me a little kick in the pants to keep up on stuff.

As I was building it, I realized that I was actually using the tool to build the tool, and figured I might as well put this out there and hopefully others will find it to be a fast and useful way to search and browse npm packages as I have.

If you’re interested in other things I’m working on, follow me on Twitter or check out the open source projects I’ve been publishing on GitHub.

I am also working on a Twitter bot for this site to tweet the most popular, newest, random packages from npm. Please follow that account now and it will start sending out packages soon–ish.

Open Software & Tools

This site wouldn’t be possible without the immense generosity and tireless efforts from the people who make contributions to the world and share their work via open source initiatives. Thank you 🙏

© 2024 – Pkg Stats / Ryan Hefner

monitoring-easy

v2.0.7

Published

Monitoring de serveurs / Projets

Downloads

2

Readme

wercker status Build Status Dependences Dependences npm version

NPM NPM

Monitoring easy

Server monitoring system, rapid installation and simple to use.


Preview

Monitoring exemple

Console interface

Console interface

Web interface ( Work in progress )

Web interface -> Monitoring-www


On my node project

  npm install monitoring-easy
require('monitoring-easy')({
  /* All is optional */
  name : 'MyProject',
  host : 'yourServer.fr',
  port : 8156,
  key : '456DAde486qD684de6'
})

For my server

  npm install monitoring-easy

Run new "client" server

npm run client or node ./src/client.js -p {port} -h {host} -k {key}

You need get network traffic ?

  • On Linux you need ifstat sudo apt-get install ifstat or go to download lib http://gael.roualland.free.fr/ifstat/
  • On Windows i have adding ifstat on the project, no command required, the download is automatically.

Run a master listenner

npm run server or node ./src/server.js -p {port} -k {key}

Run a display for view live monitoring

node run display or node ./display -p {port} -h {host} -k {key}


Create a custom display

You need just a simple SocketIO client for get servers infos


var socket    = require('socket.io-client')('http://'+yourserver+':'+port);

socket.on('connect', function(){
  // The master is online
  // Send a authentif to server
  socket.emit('auth', security_key);
});

// Result of authentif
socket.on('isAuth', function (r) {
  if (r.success) {

    // Join client room
    socket.emit('room', 'client')

    // Security key is valid go to next stape
  } else {
    // Security key is not valid
  }
});

// Informations is updated here, is active then if you are authentified
socket.on('update', function(data){
  /*
  data content:

  name : os.hostname ? os.hostname() : false,
  arch: os.arch ? os.arch() : false,
  cpus: os.cpus ? os.cpus() : false,
  freemem: os.freemem ? os.freemem() : false,
  totalmem: os.totalmem ? os.totalmem() : false,
  mempourcent: 100 - (os.freemem() * 100 / os.totalmem()),
  homedir: os.homedir ? os.homedir() : false,
  loadavg: os.loadavg ? os.loadavg() : false,
  networkInterfaces: os.networkInterfaces ? os.networkInterfaces() : false,
  platform: os.platform ? os.platform() : false,
  release: os.release ? os.release() : false,
  type: os.type ? os.type() : false,
  uptime: os.uptime ? os.uptime() : false,
  cpuAverage: this.currentCPU,
  traffic: this.traffic,
  */
});

socket.on('disconnect', function(){
  // the master is offline.
});

Change config for server monitoring

Client

Open file ./src/client.js and edit config object.

Server

Open file ./src/server.js and edit config object.

Display

Open file ./display and edit config object.

WebDisplay

The webdisplay is coming soon on Monitoring-www


Current todolist

  • Web Display (work in progress on Monitoring-www)
  • ~~Network traffic (windows & linux)~~
  • ~~Client compatibility node 0.x~~
  • Forever script