ayulestari722/LogAnalyzerAI
GitHub: ayulestari722/LogAnalyzerAI
一套由七个异步 Agent 协作编排的 AI 驱动日志分析与异常检测系统,支持多格式解析、统计异常检测、跨源关联和多种报告输出。
Stars: 0 | Forks: 0
# LogAnalyzerAI
由 AI 驱动开发工作流支持的 7-Agent 日志分析与异常检测编排系统。约 5900 行代码,约 129 个测试。
## 架构
| Agent | 角色 | LOC |
|-------|------|-----|
| ParserAgent | 多格式日志解析(JSON、syslog、Apache、nginx) | 419 |
| AnomalyAgent | 统计异常检测(z-score 激增、间隔、频率变化) | 285 |
| PatternAgent | Regex 模式匹配与频率分析 | 312 |
| CorrelationAgent | 基于时间戳和 session 的跨源事件关联 | 298 |
| AlertAgent | 严重性分类与基于阈值的告警 | 276 |
| MetricsAgent | 聚合统计:错误率、延迟百分位数、吞吐量 | 264 |
| SummaryAgent | 最终报告汇总与建议 | 248 |
编排器通过带有单 Agent 超时的 `asyncio.gather()` 协调 6 个分析 Agent,然后在它们得出结果后运行一次 `SummaryAgent`。基于严重性权重的评分将各项发现汇总为一个最终结论。
## 功能
- 具有单 Agent 超时的异步并行 Agent 调度
- 严重性评分:Critical / High / Medium / Low / Info
- 多种输出格式:JSON、Markdown、SARIF
- 多格式日志解析(JSON、syslog、nginx access、应用程序日志)
- 使用 z-score 分析的统计异常检测
- 跨源事件关联与因果链检测
- 通过 YAML 配置阈值
- Rich 格式化的 CLI 输出
- 通过继承 `BaseAgent` 实现的可插拔 Agent 系统
- 用于持续监控的 Watch 模式
## 用法
```
pip install -r requirements.txt
python -m src.cli run ./examples/sample_logs --format markdown
python -m src.cli run ./my_logs --format json --output result.json
python -m src.cli run ./logs --format sarif --output report.sarif
python -m src.cli watch ./logs --interval 5
```
## Token 消耗
在设计和实现阶段,该项目每天消耗 **约 1200 万个 token**,分布于 Hermes Agent、Claude Code 和 Xiaomi MiMo V2.5 Pro,用于多 Agent 推理、代码生成、重构循环和持续的测试维护。
## 测试
```
pytest tests/ -v
```
129 个测试覆盖了所有 7 个 Agent、编排器调度、connector、模型、实用工具和 CLI 集成。
## 项目结构
```
src/
├── agents/ (7 agent modules + base.py)
├── connectors/ (filesystem, log_parser, stream)
├── models/ (log_entry, analysis_state, schemas)
├── utils/ (config, logger, metrics, retry, serializers, severity)
├── orchestrator.py
├── cli.py
└── main.py
tests/ (12 test files, 129 tests)
config/default.yaml
examples/sample_logs/
```
## 许可证
MIT
标签:AI智能体, Python, 多智能体协同, 安全规则引擎, 异常检测, 无后门, 计算机取证, 运维监控, 逆向工具