node-os-utils
Version:
Advanced cross-platform operating system monitoring utilities with TypeScript support
139 lines • 3.77 kB
TypeScript
import { BaseMonitor } from '../core/base-monitor';
import { MonitorResult, CPUConfig, CPUInfo, CPUUsage, LoadAverage, Temperature, FrequencyInfo } from '../types';
import { PlatformAdapter } from '../types/platform';
import { CacheManager } from '../core/cache-manager';
/**
* CPU 监控器
*
* 提供 CPU 相关的监控功能,包括基本信息、使用率、温度、频率等
*/
export declare class CPUMonitor extends BaseMonitor<CPUInfo> {
private cpuConfig;
constructor(adapter: PlatformAdapter, config?: CPUConfig, cache?: CacheManager);
/**
* 获取 CPU 基本信息
*/
info(): Promise<MonitorResult<CPUInfo>>;
/**
* 获取 CPU 使用率
*/
usage(): Promise<MonitorResult<number>>;
/**
* 获取详细的 CPU 使用率信息
*/
usageDetailed(): Promise<MonitorResult<CPUUsage>>;
/**
* 获取每个 CPU 核心的使用率
*/
usageByCore(): Promise<MonitorResult<number[]>>;
/**
* 获取系统负载平均值
*/
loadAverage(): Promise<MonitorResult<LoadAverage>>;
/**
* 获取 CPU 温度
*/
temperature(): Promise<MonitorResult<Temperature[]>>;
/**
* 获取 CPU 频率信息
*/
frequency(): Promise<MonitorResult<FrequencyInfo[]>>;
/**
* 获取 CPU 缓存信息
*/
getCacheInfo(): Promise<MonitorResult<any>>;
/**
* 获取 CPU 核心数
*/
coreCount(): Promise<MonitorResult<{
physical: number;
logical: number;
}>>;
/**
* 配置采样间隔
*/
withSamplingInterval(interval: number): this;
/**
* 配置是否包含温度信息
*/
withTemperature(include: boolean): this;
/**
* 配置是否包含频率信息
*/
withFrequency(include: boolean): this;
/**
* 配置是否包含缓存信息
*/
withCacheInfo(include: boolean): this;
/**
* 配置是否按核心监控
*/
withPerCore(enable: boolean): this;
/**
* 获取默认配置
*/
protected getDefaultConfig(): CPUConfig;
/**
* 转换 CPU 基本信息
*/
private transformCPUInfo;
/**
* 转换 CPU 使用率信息
*/
private transformCPUUsage;
/**
* 转换负载平均值
*/
private transformLoadAverage;
/**
* 转换温度信息
*/
private transformTemperature;
/**
* 转换缓存信息
*/
private transformCacheInfo;
/**
* 提取频率信息
*/
private extractFrequencyInfo;
/**
* 提取缓存信息
*/
private extractCacheInfo;
/**
* 解析缓存大小字符串
*/
private parseCacheSize;
/**
* 安全解析数字
*/
private safeParseNumber;
/**
* 获取系统负载平均值(同步版本,向后兼容)
* @returns 负载平均值数组 [1分钟, 5分钟, 15分钟] 或 'not supported'
*/
loadavg(): number[] | string;
/**
* 获取指定时间窗口的负载平均值(同步版本,向后兼容)
* @param minutes 时间窗口(1, 5, 或 15 分钟)
* @returns 指定时间窗口的负载平均值或 'not supported'
*/
loadavgTime(minutes: 1 | 5 | 15): number | string;
/**
* 获取 CPU 平均信息(同步版本,向后兼容)
* @returns CPU 平均信息对象或 'not supported'
*/
average(): any;
/**
* 获取 CPU 型号(同步版本,向后兼容)
* @returns CPU 型号字符串或 'not supported'
*/
model(): string;
/**
* 获取 CPU 核心数(同步版本,向后兼容)
* @returns CPU 核心数或 'not supported'
*/
count(): number | string;
}
//# sourceMappingURL=cpu-monitor.d.ts.map