monitoring-easy
v2.0.7
Published
Monitoring de serveurs / Projets
Downloads
2
Readme
Monitoring easy
Server monitoring system, rapid installation and simple to use.
Preview
Console interface
Web interface ( Work in progress )
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