mirror of
https://github.com/ether/etherpad-lite.git
synced 2025-04-24 01:16:15 -04:00
some duration storage in stats
This commit is contained in:
parent
6a93c66de4
commit
49ebba4d6c
2 changed files with 30 additions and 0 deletions
|
@ -182,8 +182,15 @@ exports.restartServer = async () => {
|
|||
|
||||
app.use(cookieParser(settings.sessionKey, {}));
|
||||
|
||||
stats.gauge('expressConfigureDuration', () => expressConfigureDuration);
|
||||
const preExpressConfigure = Date.now();
|
||||
hooks.callAll('expressConfigure', {app});
|
||||
const expressConfigureDuration = Date.now() - preExpressConfigure;
|
||||
|
||||
stats.gauge('expressCreateServerDuration', () => expressCreateServerDuration);
|
||||
const preExpressCreateServer = Date.now();
|
||||
hooks.callAll('expressCreateServer', {app, server: exports.server});
|
||||
const expressCreateServerDuration = Date.now() - preExpressCreateServer;
|
||||
|
||||
await util.promisify(exports.server.listen).bind(exports.server)(settings.port, settings.ip);
|
||||
};
|
||||
|
|
|
@ -60,16 +60,39 @@ exports.start = async () => {
|
|||
stats.gauge('memoryUsage', () => process.memoryUsage().rss);
|
||||
stats.gauge('memoryUsageHeap', () => process.memoryUsage().heapUsed);
|
||||
|
||||
// Performance stats gauges
|
||||
// We use gauges because a reload might replace the value
|
||||
stats.gauge('postNpmLoad', () => preNpmLoad);
|
||||
stats.gauge('postNpmLoad', () => postNpmLoad);
|
||||
|
||||
const preNpmLoad = Date.now() - stats.startTime;
|
||||
await util.promisify(npm.load)();
|
||||
const postNpmLoad = Date.now() - stats.startTime;
|
||||
|
||||
try {
|
||||
stats.gauge('dbInitDuration', () => dbInitDuration);
|
||||
const preDbInit = Date.now();
|
||||
await db.init();
|
||||
const dbInitDuration = Date.now() - preDbInit;
|
||||
|
||||
stats.gauge('loadPluginsDuration', () => loadPluginsDuration);
|
||||
const prePluginsUpdate = Date.now();
|
||||
await plugins.update();
|
||||
const loadPluginsDuration = Date.now() - prePluginsUpdate;
|
||||
|
||||
console.info(`Installed plugins: ${plugins.formatPluginsWithVersion()}`);
|
||||
console.debug(`Installed parts:\n${plugins.formatParts()}`);
|
||||
console.debug(`Installed hooks:\n${plugins.formatHooks()}`);
|
||||
|
||||
stats.gauge('loadSettingDuration', () => loadSettingsDuration);
|
||||
const preLoadSettings = Date.now();
|
||||
await hooks.aCallAll('loadSettings', {settings});
|
||||
const loadSettingsDuration = Date.now() - preLoadSettings;
|
||||
|
||||
stats.gauge('createSettingsDuration', () => createSettingsDuration);
|
||||
const preCreateServer = Date.now();
|
||||
await hooks.aCallAll('createServer');
|
||||
const createSettingsDuration = Date.now() - preCreateServer;
|
||||
} catch (e) {
|
||||
console.error(`exception thrown: ${e.message}`);
|
||||
if (e.stack) console.log(e.stack);
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue