Skip to content

statman-gauge is one of the metrics from the statman library. Loosely based upon codehale metric package, a gauge is an instantaneous measurement metric

License

Notifications You must be signed in to change notification settings

jasonray/statman-gauge

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

94 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

statman-gauge Build Status on npm Greenkeeper badge

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 and npm installed
  • Clone source code to you local machine
  • Setup dependencies: npm install
  • run tests: npm test

About

statman-gauge is one of the metrics from the statman library. Loosely based upon codehale metric package, a gauge is an instantaneous measurement metric

Resources

License

Stars

Watchers

Forks

Packages

No packages published