# nvidia-monitor **Repository Path**: ITG/nvidia-monitor ## Basic Information - **Project Name**: nvidia-monitor - **Description**: No description available - **Primary Language**: Unknown - **License**: Not specified - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 0 - **Created**: 2025-11-10 - **Last Updated**: 2025-11-26 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README # NVIDIA GPU 监控程序 这是一个用于监控 NVIDIA GPU 状态并在出现异常时通过飞书发送告警的程序。 ## 功能特性 - 监控 NVIDIA GPU 数量 - 检查 GPU 进程状态 - 当 GPU 数量异常或出现错误时,通过飞书 Webhook 发送告警 - 可配置的监控参数 - 自动恢复通知 ## 系统要求 - Windows/Linux/macOS 操作系统 - NVIDIA 驱动程序已安装 - `nvidia-smi` 命令可用 - Go 1.16 或更高版本(仅编译时需要) ## 安装和使用 1. **配置飞书 Webhook**: - 在飞书群聊中添加一个机器人,获取 Webhook URL - 修改 `config.json` 文件中的 `webhook_url` 字段 2. **配置监控参数**: - 修改 `config.json` 文件中的参数: - `expected_gpu_count`: 期望的 GPU 数量 - `check_interval`: 检查间隔(秒) - 其他阈值参数根据需要调整 3. **运行程序**: ```bash ./nvidia-monitor ``` ## 配置文件说明 ```json { "webhook_url": "https://open.feishu.cn/open-apis/bot/v2/hook/YOUR_WEBHOOK_TOKEN_HERE", "expected_gpu_count": 1, "check_interval": 30, "temperature_threshold": 85, "memory_usage_threshold": 95, "power_threshold": 200000 } ``` - `webhook_url`: 飞书机器人的 Webhook URL - `expected_gpu_count`: 期望的 GPU 数量 - `check_interval`: 检查间隔(秒) - `temperature_threshold`: 温度阈值(摄氏度) - `memory_usage_threshold`: 内存使用率阈值(百分比) - `power_threshold`: 功耗阈值(毫瓦) ## 告警信息 当程序检测到以下情况时会发送告警: 1. GPU 数量与预期不符 2. GPU 进程出现错误 3. 其他异常情况 当问题解决后,程序会自动发送恢复通知。 ## 编译 如果需要从源码编译: ```bash go build ``` ## 日志 程序会在控制台输出运行日志,包括: - 程序启动信息 - 配置参数 - GPU 状态检查结果 - 告警发送状态 ## 故障排除 1. **nvidia-smi 命令不可用**: - 确保已安装 NVIDIA 驱动程序 - 确保 `nvidia-smi` 在系统 PATH 中 2. **飞书告警发送失败**: - 检查 Webhook URL 是否正确 - 检查网络连接 - 检查飞书机器人的权限设置