Aucune description

Nicolas FRADIN b932685a8c update README il y a 12 ans
tables 9a2922d58b update README il y a 12 ans
README.md b932685a8c update README il y a 12 ans
countersEngine.js 9a2922d58b update README il y a 12 ans
mysql-backend.js 9a2922d58b update README il y a 12 ans

README.md

nodejs-statsd-mysql-backend

MySQL backend for Statsd

Install

Go into Statsd parent directory and execute :

git clone https://github.com/fradinni/nodejs-statsd-mysql-backend.git

You should have a new directory called 'nodejs-statsd-mysql-backend' just next to the Statsd directory.

Configuration

Edit Statsd configuraton file and add mysql-backend configuration.

Example :

{
  graphitePort: 2003
, graphiteHost: "localhost"
, port: 8125
, backends: [ "../nodejs-statsd-mysql-backend/mysql-backend.js" ] // Backend MySQL

  // MySQL Backend minimal configuration
, mysql: { 
	   host: "localhost", 
	   port: 3306, 
	   user: "root", 
	   password: "root", 
	   database: "statsd_db"
  }
}

Required parameters :

  • host: MySQL instance host.
  • port: MySQL instance port.
  • user: MySQL user.
  • password: MySQL password.
  • database: Default database where statsd table are stored.

Optional parameters :

  • tables: List of tables names used (ex: ["stats", "users"]).
  • engines: List of MySQL Backend engines (see 'MySQL Bakend Engines' chapter for more details).

Introduction

This is node.js backend for statsd. It is written in JavaScript, does not require compiling, and is 100% MIT licensed.

It save statsd received values to a MySQL database.

Data Structure for statsd counters

By default, values are stored into a 'counters_statistics' table. This table has a very simple structure with 3 columns :

  • timestamp: The timestamp sent by statsd flush event.
  • name: The counter name.
  • value: The counter value.

The primary key of this table is composed by fields: timestamp and name. It means when a new value arrives for a counter, this value is added to the previous one and stored in database. With this mechanism, we can keep a log of counters values.