UNPKG

@report-toolkit/common

Version:

See docs at [https://ibm.github.io/report-toolkit](https://ibm.github.io/report-toolkit)

112 lines (101 loc) 2.16 kB
export interface ReportHeaderCpu { model: string; speed: number; user: number; nice: number; sys: number; idle: number; irq: number; } export interface ReportHeader { event: string; trigger: string; filename: string; dumpEventTime: string; dumpEventTimeStamp: string; processId: number; threadId: number | null; cwd: string; commandLine: string[]; nodejsVersion: string; wordSize: number; arch: string; platform: string; componentVersions: { [key: string]: string; }; release: { name: string; headersUrl: string; sourceUrl: string; }; osName: string; osRelease: string; osVersion: string; osMachine: string; cpus: ReportHeaderCpu[]; host: string; } export interface ReportJSStack { message: string; stack: string[]; } export interface NativeStackFrame { pc: string; symbol: string; } export interface ReportHeapSpace { memorySize: number; committedMemory: number; capacity: number; used: number; available: number; } export interface ReportJSHeap { totalMemory: number; totalCommittedMemory: number; usedMemory: number; availableMemory: number; memoryLimit: number; heapSpaces: { [key: string]: ReportHeapSpace; }; } export interface ReportResourceUsage { userCpuSeconds: number; kernelCpuSeconds: number; cpuConsumptionPercent: number; maxRss: number; pageFaults: { IORequired: number; IONotRequired: number; }; fsActivity: { reads: number; writes: number; }; } // TODO: Multiple variants, CBA for PoC type ReportUVItem = {}; export type ReportLimit = number | 'unlimited'; export interface ReportUserLimit { hard: ReportLimit; soft: ReportLimit; } export interface DiagnosticReport { header: ReportHeader; javascriptStack: ReportJSStack; nativeStack: NativeStackFrame[]; javascriptHeap: ReportJSHeap; resourceUsage: ReportResourceUsage; libuv: ReportUVItem[]; environmentVariables: { [key: string]: string; }; // not present on reports generated on win32 systems userLimits?: { [key: string]: ReportUserLimit; }; sharedObjects: string[]; workers: DiagnosticReport[]; }