0.1.3 • Published 10 years ago

tallyup v0.1.3

Weekly downloads
2
License
-
Repository
github
Last release
10 years ago

tallyup

Tallyup is a simple stats, ratings, generic command processing and aggregation server similar to statsd. Tallyup includes the server for starting things up (tallyupd) and a management server for issuing simple commands to determine the state of things. Tallyup also has the ability to flush to listeners. In short, tallyup is a network daemon that runs in Node.js sent over TCP (instead of UDP).

Inspiration

Tallyup was inspired by statsd and has some basic implementation differences with relation to aiming for stream reuse, code separation, management cli, command line configuration, and generic command processing (which can be later used for extensible process handlers).

Installation and Configuration

npm install -g tallyup

Once you've installed via the above command, you should have bothtallyupd and tallyup-cli available from your local bin environment. Additional usage can be found via tallyupd --help ortallyup-cli --help.

Usage

The basic line protocol is identical to statsd sent via TCP.

<metricname>:<value>|<type>

You can send a simple metric from command line using something like nc.

echo "movie:3|rate" | nc 127.0.0.1 8711

Types

Counting

Similar to statsd, a counter will add the amount to the bucket. At each flush interval the current count is sent and reset to 0.

requests:1|incr

Aggregates

Aggregates are automatically calculated for various items. For instance, if you perform the incr command type, then a counter is tracked as well as the aggregate sum long term. This allows us to keep track of the rate per second of a given counter, flush counts over time, and store the total amount for a key.

Ratings

Ratings are useful for keeping track of a value that might be within a range of static ratings. For instance, if you are tracking the ratings on products or movies, you can use this type to keep track of theaggregate number of ratings supplied to a key, the aggregate average rating, the aggregate of all the rating values, as well as the ratings per second as tracked by counters.

movieid:3|rate

tallyup-cli usage

tallyup-cli provides a simple cli that will connect to the management server for a given tallyupd server. Commands are available via help. You should be able to see current ratings, info, counters, and aggregates.

License

Copyright (c) 2014 Thomas Holloway Licensed under the MIT license.