b91eb334e49b097cbf0c06f6837120b15595fa99
[KiwiIRC.git] / server_modules / stats.js
1 /**
2 * Stats counter
3 *
4 * Retreive stats for internal kiwi events. Handy for graphing
5 */
6
7 var kiwiModules = require('../server/modules'),
8 fs = require('fs');
9
10
11
12 var module = new kiwiModules.Module('stats_file');
13
14 module.on('stat counter', function (event, event_data) {
15 var stat_name = event_data.name,
16 stats_file, timestamp,
17 ignored_events = [];
18
19 // Some events may want to be ignored
20 ignored_events.push('http.request');
21
22 if (ignored_events.indexOf(stat_name) > -1) {
23 return;
24 }
25
26 timestamp = Math.floor((new Date()).getTime() / 1000);
27
28 stats_file = fs.createWriteStream('kiwi_stats.log', {'flags': 'a'});
29 stats_file.write(timestamp.toString() + ' ' + stat_name + '\n');
30 });