Software: Apache/2.4.41 (Ubuntu). PHP/8.0.30 uname -a: Linux apirnd 5.4.0-204-generic #224-Ubuntu SMP Thu Dec 5 13:38:28 UTC 2024 x86_64 uid=33(www-data) gid=33(www-data) groups=33(www-data) Safe-mode: OFF (not secure) /var/www/html/proxy_server/node_modules/express-status-monitor/src/helpers/ drwxr-xr-x | |
| Viewing file: Select action/file-type: /* eslint strict: "off", init-declarations: "off" */
'use strict';
const socketIo = require('socket.io');
const gatherOsMetrics = require('./gather-os-metrics');
let io;
const addSocketEvents = (socket, config) => {
socket.emit('esm_start', config.spans);
socket.on('esm_change', () => {
socket.emit('esm_start', config.spans);
});
};
module.exports = (server, config) => {
if (io === null || io === undefined) {
if (config.websocket !== null) {
io = config.websocket;
} else {
io = socketIo(server);
}
io.on('connection', socket => {
if (config.authorize) {
config
.authorize(socket)
.then(authorized => {
if (!authorized) socket.disconnect('unauthorized');
else addSocketEvents(socket, config);
})
.catch(() => socket.disconnect('unauthorized'));
} else {
addSocketEvents(socket, config);
}
});
config.spans.forEach(span => {
span.os = [];
span.responses = [];
const interval = setInterval(() => gatherOsMetrics(io, span), span.interval * 1000);
// Don't keep Node.js process up
interval.unref();
});
}
};
|
:: Command execute :: | |
--[ c99shell v. 2.5 [PHP 8 Update] [24.05.2025] | Generation time: 0.0051 ]-- |