From a01f70521bf5ad26829d9da4f0c78cc3bbb3cd43 Mon Sep 17 00:00:00 2001 From: Manuel Araoz Date: Tue, 2 Sep 2014 11:44:07 -0300 Subject: [PATCH] monitor plugin: first version --- plugins/config-monitor.js | 3 +-- plugins/monitor.js | 19 ++++++++++++++++++- 2 files changed, 19 insertions(+), 3 deletions(-) diff --git a/plugins/config-monitor.js b/plugins/config-monitor.js index 9ee7de0..1958a96 100644 --- a/plugins/config-monitor.js +++ b/plugins/config-monitor.js @@ -1,4 +1,3 @@ module.exports = { - - + cronTime: '* * * * *', // run each minute }; diff --git a/plugins/monitor.js b/plugins/monitor.js index 9536a1e..e5d0ac3 100644 --- a/plugins/monitor.js +++ b/plugins/monitor.js @@ -2,8 +2,25 @@ var mdb = require('../lib/MessageDb').default(); var logger = require('../lib/logger').logger; var preconditions = require('preconditions').singleton(); var microtime = require('microtime'); +var cron = require('cron'); +var CronJob = cron.CronJob; module.exports.init = function(config) { - logger.info('Using monitor plugin'); + var cronTime = config.cronTime || '0 * * * *'; + logger.info('Using monitor plugin with cronTime ' + cronTime); + var onTick = function() { + mdb.getAll(function(err, messages) { + if (err) logger.error(err); + else { + logger.info('Message db size = ' + messages.length); + } + }); + }; + var job = new CronJob({ + cronTime: cronTime, + onTick: onTick + }); + onTick(); + job.start(); };