UNPKG

endpoint-monitor

Version:
31 lines (25 loc) 867 B
const os = require('os'); const getMemoryUsage = (): number => { return addObjectAllValues(process.memoryUsage()); }; const getMemoryUsagePercent = (): number => { const totalMemory: number = os.totalmem(); return getMemoryUsage() / totalMemory; }; const getFreeMemory = (): number => { return os.freemem(); }; const getFreeMemoryPercent = (): number => { const freeMemory = getFreeMemory(); const totalMemory: number = os.totalmem(); return freeMemory / totalMemory; }; const addObjectAllValues = (obj: Object): number => { let result: number = 0; const values: any[] = Object.values(obj); values.forEach((value) => { if (typeof value === 'number') result += value; }); return result; }; export { getMemoryUsage, getMemoryUsagePercent, getFreeMemory, getFreeMemoryPercent };