stats: Expose ueberDB metrics
This commit is contained in:
parent
71dfa7070d
commit
fcf43a7089
1 changed files with 8 additions and 0 deletions
|
@ -24,6 +24,7 @@
|
|||
const ueberDB = require('ueberdb2');
|
||||
const settings = require('../utils/Settings');
|
||||
const log4js = require('log4js');
|
||||
const stats = require('../stats');
|
||||
const util = require('util');
|
||||
|
||||
// set database settings
|
||||
|
@ -48,6 +49,13 @@ exports.init = async () => await new Promise((resolve, reject) => {
|
|||
process.exit(1);
|
||||
}
|
||||
|
||||
if (db.metrics != null) {
|
||||
for (const [metric, value] of Object.entries(db.metrics)) {
|
||||
if (typeof value !== 'number') continue;
|
||||
stats.gauge(`ueberdb_${metric}`, () => db.metrics[metric]);
|
||||
}
|
||||
}
|
||||
|
||||
// everything ok, set up Promise-based methods
|
||||
['get', 'set', 'findKeys', 'getSub', 'setSub', 'remove'].forEach((fn) => {
|
||||
exports[fn] = util.promisify(db[fn].bind(db));
|
||||
|
|
Loading…
Reference in a new issue