Merge pull request #181 from maraoz/plugin/monitor
Monitor plugin: simple version
This commit is contained in:
commit
abcc3e3616
|
@ -76,6 +76,7 @@ var bitcoindConf = {
|
|||
disableAgent: true
|
||||
};
|
||||
|
||||
var enableMonitor = process.env.ENABLE_MONITOR === 'true';
|
||||
var enableCleaner = process.env.ENABLE_CLEANER === 'true';
|
||||
var enableMailbox = process.env.ENABLE_MAILBOX === 'true';
|
||||
var enableRatelimiter = process.env.ENABLE_RATELIMITER === 'true';
|
||||
|
@ -93,6 +94,8 @@ if (!fs.existsSync(db)) {
|
|||
}
|
||||
|
||||
module.exports = {
|
||||
enableMonitor: enableMonitor,
|
||||
monitor: require('../plugins/config-monitor.js'),
|
||||
enableCleaner: enableCleaner,
|
||||
cleaner: require('../plugins/config-cleaner.js'),
|
||||
enableMailbox: enableMailbox,
|
||||
|
|
|
@ -139,6 +139,9 @@ if (config.enableCleaner) {
|
|||
require('./plugins/cleaner').init(config.cleaner);
|
||||
}
|
||||
|
||||
if (config.enableMonitor) {
|
||||
require('./plugins/monitor').init(config.monitor);
|
||||
}
|
||||
|
||||
|
||||
// express settings
|
||||
|
|
|
@ -1,6 +1,6 @@
|
|||
module.exports = {
|
||||
|
||||
cronTime: '* * * * *',
|
||||
cronTime: '0 * * * *', // run each hour
|
||||
threshold: 2*24*60*60, // 2 days, in seconds
|
||||
|
||||
};
|
||||
|
|
|
@ -0,0 +1,3 @@
|
|||
module.exports = {
|
||||
cronTime: '* * * * *', // run each minute
|
||||
};
|
|
@ -0,0 +1,26 @@
|
|||
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) {
|
||||
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();
|
||||
};
|
Loading…
Reference in New Issue