koishi-plugin-exporter
Version:
Koishi OpenMetrics Exporter
24 lines (23 loc) • 749 B
JavaScript
;
Object.defineProperty(exports, "__esModule", { value: true });
exports.users = void 0;
const koishi_1 = require("koishi");
const prom_client_1 = require("prom-client");
const common_1 = require("../common");
const users = (ctx, config, register) => {
new prom_client_1.Gauge({
name: common_1.prefix + common_1.metricNames.users,
help: 'Total user.',
registers: [register],
labelNames: ['instance_name'],
async collect() {
const users = await ctx.database
.select('user')
.execute((x) => koishi_1.$.count(x.id));
this.set({
instance_name: config.name,
}, users);
},
});
};
exports.users = users;