statman-gauge
v1.1.1
Published
statman-gauge is one of the metrics from the statman library. Loosely based upon codehale metric package, a gauge is an instantaneous measurement metric
Downloads
9,557
Readme
statman-gauge
statman-gauge
is one of the metrics from the statman
library. Loosely based upon codehale metric package, a gauge is an instantaneous measurement metric. This can be use to capture things like the size of a queue, number of messages processed, or some other interesting thing within your system.
WARNING!! if you look at the word gauge
long enough, it looks misspelled
Install it!
Option 1: access directly
Install using npm:
npm install statman-gauge
Reference in your app:
var Gauge = require('statman-gauge');
var gauge = Gauge('gauge-name');
Option 2: access from statman
Install using npm:
npm install statman
Reference in your app:
var statman = require('statman');
var gauge = statman.Gauge('gauge-name');
Use it!
Constructor
- Gauge() => create instance of a gauge
- Gauge(name) => create instance of a gauge with name
- Gauge(name, f()) => create instance of a gauge with name, where f is a function that returns the value for the gauge
Increment
- increment() => increment value by 1
- increment(value) => increment by value
gauge.increment(); //increment by 1
gauge.increment(10); //increment by 10
Decrement
- decrement() => decrement value by 1
- decrement(value) => decrement by value
gauge.decrement(); //decrement by 1
gauge.decrement(10); //decrement by 10
Set
- set(value) => set value of gauge
gauge.set(5);
Value
- value() => get the value of the gauge
gauge.value();
Example:
Suppose that we want to create a gauage that measures that size of a queue. The below indicates how to register this.
Method 1 (use gauge directly)
var Gauge = require('statman-gauge');
var gauge = Gauge('queueSize');
function enqueue(message) {
data.push(message);
gauge.increment();
}
function dequeue() {
data.pop(message);
gauge.decrement();
}
Method 2 (use gauge via statman)
TODO
Method 3 (use custom value function)
var Gauge = require('statman-gauge');
var gauge = Gauge('queueSize', function() {
return data.size();
});
function enqueue(message) {
data.push(message);
}
function dequeue() {
data.pop(message);
}
Build it!
- Make sure that you have
node
andnpm
installed - Clone source code to you local machine
- Setup dependencies:
npm install
- run tests:
npm test