fix prometheus metric and add total users and active pad count (#7179)

* fix prometheus metric registration

* add totalUsers and activePads metric to prometheus
This commit is contained in:
Phillip 2025-10-19 17:27:21 +02:00 committed by GitHub
parent 49d431b6b8
commit 06f67b4c01
No known key found for this signature in database
GPG key ID: B5690EEEBB952194
2 changed files with 42 additions and 18 deletions

View file

@ -94,14 +94,25 @@ exports.socketio = () => {
const sessioninfos:MapArrayType<any> = {};
exports.sessioninfos = sessioninfos;
stats.gauge('totalUsers', () => socketio ? socketio.engine.clientsCount : 0);
stats.gauge('activePads', () => {
function getTotalActiveUsers() {
return socketio ? socketio.engine.clientsCount : 0;
}
exports.getTotalActiveUsers = getTotalActiveUsers;
function getActivePadCountFromSessionInfos() {
const padIds = new Set();
for (const {padId} of Object.values(sessioninfos)) {
if (!padId) continue;
padIds.add(padId);
}
return padIds.size;
}
exports.getActivePadCountFromSessionInfos = getActivePadCountFromSessionInfos;
stats.gauge('totalUsers', () => getTotalActiveUsers());
stats.gauge('activePads', () => {
return getActivePadCountFromSessionInfos();
});
/**