
Product
Introducing Socket Fix for Safe, Automated Dependency Upgrades
Automatically fix and test dependency updates with socket fix—a new CLI tool that turns CVE alerts into safe, automated upgrades.
metrics-server
Advanced tools
metrics-server is a basic metrics server and client. The client uses UDP to send metric to the server. The server stores all metric into a mongodb database.
var usage = require('usage');
var udpServer = require('./lib/udpserver').createServer({
host : '127.0.0.1',
port : 4001,
mongodb : {
host : '127.0.0.1'
}
});
var webServer = require('./lib/webserver').createServer({
udp : udpServer,
host : '127.0.0.1',
port : 4002,
mongodb : {
host : '127.0.0.1'
}
});
var memory = require('./lib/metric').createMetric({
host : '127.0.0.1',
port : 4001
});
var cpu = require('./lib/metric').createMetric({
host : '127.0.0.1',
port : 4001
});
memory.interval = cpu.interval = false;
memory.token = cpu.token = 'random-token';
memory.name = 'memory';
cpu.name = 'cpu';
var pid = process.pid;
setInterval(function() {
usage.lookup(pid, {
keepHistory : true
}, function(err, result) {
memory.cb(result.memory);
cpu.cb(result.cpu);
});
}, 1000);
webServer.start();
udpServer.start();
memory.start();
cpu.start();
var Metrics = require('metrics-server')
To create the UDP server. This is used to recive metrics from the clients. Options to pass in are
{
host : '127.0.0.1',
port : 4001,
mongodb : {
host : '127.0.0.1',
port : 27017,
path : '/data/db'
}
}
Call udpserver.start
to start the server
To create the UDP server. This is used to recive metrics from the clients. Options to pass in are
{
host : '127.0.0.1',
port : 4002,
mongodb : {
host : '127.0.0.1',
port : 27017,
path : '/data/db'
}
}
Call webserver.start
to start the server
This is used to send metrics to the server.
{
host : '127.0.0.1',//use the udp server host
port : 4002//use the udp server port
}
metric.token
is used to group metrics together. The token should non guessable string.
metric.name
is the name of the metrics type
metric.interval
is the interval in milliseconds between calls to metric.run()
If you set this to false
then you can manually call metric.cb(metricValue)
metric.run
is the function that is called when using metric.interval
metric.run = function(cb){
setTimeout(function(){
cb(Math.floor((Math.random() * 100) + 1));
},100);
}
metric.cb
is used when metric.interval
is set to false
You would call it directly when you dont want call metric.run
setInterval(function(){
metric.cb(Math.floor((Math.random() * 100) + 1));
},1000);
Call metric.start
to start collection metrics
##API
Metrics.webserver
is used to recive metric from the database.
/metric/:token
Called to recive metrics from the DB
name=cpu
Query the database for e certen metrics name.
from=2014-05-08T00:04:56.656Z
Query the database from a certain time.
to=2014-05-08T00:04:56.656Z
Query the database to a certain time. Must include from
.
limit=500
Query the database and pull out 500. Defaults to 1000, MAX is 10000.
/metric/:token/count
Count the metrics in the DB.
Same query params can be sent as /metric/:token
FAQs
Basic metrics server and client.
The npm package metrics-server receives a total of 19 weekly downloads. As such, metrics-server popularity was classified as not popular.
We found that metrics-server demonstrated a not healthy version release cadence and project activity because the last version was released a year ago. It has 1 open source maintainer collaborating on the project.
Did you know?
Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.
Product
Automatically fix and test dependency updates with socket fix—a new CLI tool that turns CVE alerts into safe, automated upgrades.
Security News
CISA denies CVE funding issues amid backlash over a new CVE foundation formed by board members, raising concerns about transparency and program governance.
Product
We’re excited to announce a powerful new capability in Socket: historical data and enhanced analytics.