24 lines
530 B
TypeScript
24 lines
530 B
TypeScript
import { app } from 'electron';
|
|
|
|
export interface AppMetricsProcessSnapshot {
|
|
pid: number;
|
|
type: string;
|
|
workingSetKb: number | null;
|
|
}
|
|
|
|
export interface AppMetricsSnapshot {
|
|
collectedAt: number;
|
|
processes: AppMetricsProcessSnapshot[];
|
|
}
|
|
|
|
export function collectAppMetricsSnapshot(): AppMetricsSnapshot {
|
|
return {
|
|
collectedAt: Date.now(),
|
|
processes: app.getAppMetrics().map((metric) => ({
|
|
pid: metric.pid,
|
|
type: metric.type,
|
|
workingSetKb: metric.memory?.workingSetSize ?? null
|
|
}))
|
|
};
|
|
}
|