UNPKG

qapinterface

Version:

Comprehensive API utilities for Node.js applications including authentication, security, request processing, and response handling with zero external dependencies

38 lines (32 loc) 1.45 kB
/** * Memory Monitor Starter * Single Responsibility: Start memory monitoring ONLY */ const { createMemoryMonitor } = require('../utility/memoryMonitor'); // import factory for monitor instances const { logError } = require('../utility/console-logger'); // use internal error logging let activeMonitor = null; // holds running monitor instance /** * Starts periodic memory usage logging. * @param {object} logger - The logger instance. * @param {object} [options] - Monitoring options. */ function startMemoryMonitoring(logger, options = {}) { console.log(`startMemoryMonitoring called`); // log function entry try { // handle potential errors if (!activeMonitor) activeMonitor = createMemoryMonitor(); // create monitor once activeMonitor.attachLogger(logger); // attach provided logger activeMonitor.start(options); // begin monitoring } catch (error) { // catch runtime errors logError('MEMORY_MONITOR', `Failed to start memory monitoring: ${error.message}`, { options }); // log error context } console.log(`startMemoryMonitoring completed`); // log function exit } function getActiveMonitor() { console.log(`getActiveMonitor called`); // log function entry console.log(`getActiveMonitor returning monitor`); // log before return return activeMonitor; // expose current monitor } module.exports = { startMemoryMonitoring, // export starter getActiveMonitor // export monitor accessor for stopper };