electron-process-reporter
Utility to extract interesting process reports of an Electron application.
Installation
$ npm install --save electron-process-reporter
Usage
onExtendedProcessMetrics
Returns an Rx.Observable that emits reports of ExtendedProcessMetric
every options.samplingInterval
ms.
import { app } from 'electron';
import { onExtendedProcessMetrics } from 'electron-process-reporter';
onExtendedProcessMetrics(app, { samplingInterval: 1000 })
.subscribe(report => console.log(report))
onExcessiveCPUUsage
Will emit ExtendedProcessMetric[]
when a process exceeds the options.percentCPUUsageThreshold
on more than options.samplesCount
samples.
import { app } from 'electron';
import { onExcessiveCPUUsage } from 'electron-process-reporter';
onExcessiveCPUUsage(
app,
{
samplesCount: 1,
percentCPUUsageThreshold: 90,
})
.subscribe(report => console.log(report))
onProcessTreeMetricsForPid
Returns an Rx.Observable that emits PidUsage[]
every options.samplingInterval
ms.
import { onProcessTreeMetricsForPid } from 'electron-process-reporter';
onProcessTreeMetricsForPid(process.pid, { samplingInterval: 1000 })
.subscribe(report => console.log(report))
onExcessiveCPUUsageInProcessTree
Will emit PidUsage[]
when a process of the tree exceeds the options.percentCPUUsageThreshold
on more than options.samplesCount
samples.
import { onExcessiveCPUUsageInProcessTree } from 'electron-process-reporter';
onExcessiveCPUUsageInProcessTree(
process.pid,
{
samplesCount: 1,
percentCPUUsageThreshold: 90,
})
.subscribe(report => console.log(report))