← ClaudeAtlas

log-analyzerlisted

【日志分析】对服务器日志进行结构化分析,提取异常模式、频率统计、趋势分析和根因推断。支持 Nginx、应用日志、系统日志等常见格式。 触发时机: - 用户提供日志内容要求分析 - remote-exec 获取日志后需要解读 - 排查线上问题时需要分析错误日志 纯 prompt 模板,不依赖外部工具。
afine907/skills · ★ 0 · AI & Automation · score 75
Install: claude install-skill afine907/skills
# Log Analyzer — 日志分析 Agent 对服务器日志进行结构化分析,提取异常模式、频率统计、趋势分析。 ## Goal 对服务器日志进行结构化分析,提取异常模式、频率统计、趋势分析和根因推断。支持 Nginx、应用日志、系统日志等常见格式 ## Trigger - 用户提供日志内容要求分析 - remote-exec 获取日志后需要解读 - 排查线上问题时需要分析错误日志 ## 工作流程 ``` 原始日志 → 格式识别 → 结构化解析 → 异常检测 → 趋势分析 → 输出报告 ``` ## Step 1: 识别日志格式 根据日志内容自动识别格式类型: | 格式 | 特征 | 常见来源 | |------|------|----------| | **Nginx/Apache Access** | IP + 时间 + Method + Path + Status + BodyBytes + UserAgent | Web 服务器 | | **Nginx Error** | 时间 + 级别 + PID + 消息 | Nginx | | **JSON 结构化日志** | `{"time":..., "level":..., "msg":...}` | 现代应用(Go、Node.js、Python) | | **系统日志 (syslog)** | 时间 + 主机 + 进程 + 消息 | Linux 系统 | | **Java Stacktrace** | Exception 开头 + at ... 堆栈 | Java 应用 | | **自定义应用日志** | 自定义格式,包含级别+时间戳+消息 | 各类应用 | **如无法识别**:向用户询问日志来源和格式说明。 ## Step 2: 结构化解析 对日志按行解析,提取关键字段: ``` # Nginx Access 示例 192.168.1.1 - - [10/May/2025:13:55:36 +0800] "GET /api/users HTTP/1.1" 200 1234 "-" "curl/7.68" # 解析结果 { "ip": "192.168.1.1", "time": "2025-05-10T13:55:36+08:00", "method": "GET", "path": "/api/users", "status": 200, "bytes": 1234, "agent": "curl/7.68" } ``` ### 关注的关键指标 - **异常状态码**: 4xx(客户端错误)、5xx(服务端错误) - **响应时间**: 慢请求识别(超过 1s、3s、5s 的阈值) - **错误级别**: FATAL > ERROR > WARN 的分布 - **重复模式**: 同一错误反复出现 - **时间聚集**: 错误集中在特定时间窗口 ## Step 3: 异常检测 扫描日志并标记异常条目: ### 异常等级定义 | 等级 | 含义 | 示例 | |------|------|------| | 🚨 **CRITICAL** | 严重影响可用性 | OOM、panic、连接池耗尽、5xx 暴增 | | ⚠️ **WARNING** | 潜在风险 |