Sarfaraz097/log-analytics-monitoring-system

GitHub: Sarfaraz097/log-analytics-monitoring-system

一个基于 Python 的企业级日志分析工具,通过 JSON 配置动态解析任意格式的时间戳日志,自动计算 KPI、检测异常并生成系统健康报告。

Stars: 0 | Forks: 0

# log-analytics 监控系统 ## 这是什么? 一个格式无关的 log-analytics-monitoring-system,能够解析任何带有时间戳的日志文件, 并通过命令行生成系统健康智能报告。 ## 目录结构 log-engine/ ├── exec/ │ ├── main.py # 入口点 - 运行此文件 │ ├── parser.py # 读取并解析日志文件 │ ├── analyzer.py # 计算 KPI 并检测异常 │ └── reporter.py # 将报告输出至 CLI 并保存为 markdown ├── config/ │ ├── log_mapping.json # 日志格式配置 │ └── requirements.txt # Python 依赖 ├── hackathon_logs.txt # 示例日志文件 └── README.md ## 环境要求 - Python 3.8+ - rich 库 ## 安装说明 ### 步骤 1 - 创建虚拟环境 ``` python -m venv venv ``` ### 步骤 2 - 激活虚拟环境 Windows: ``` venv\Scripts\activate ``` ### 步骤 3 - 安装依赖 ``` pip install rich ``` ## 运行说明 ``` python exec/main.py --log hackathon_logs.txt --config config/log_mapping.json --output both ``` ## 输出选项 | 选项 | 描述 | |--------|-------------| | cli | 仅在终端显示报告 | | markdown | 仅保存 report.md 文件 | | both | CLI + markdown 两者皆有 | ## 示例输出 事件总数 (Total Events) → 200,000 错误率 (Error Rate) → 25.13% 正常运行时间得分 (Uptime Score) → 74.87% 错误密度 (Error Density) → 5.03 错误/分钟 可疑用户 (Suspicious Users) → 899 未授权 IP (Unauthorized IPs) → 6,631 ## 配置工作原理 编辑 `config/log_mapping.json` 以支持任何日志格式。 示例日志行: 2026-04-01 00:00:00 ERROR [DBService] Payment failed orderId=O462 配置映射各部分内容: - timestamp → `2026-04-01 00:00:00` - level → `ERROR` - component → `DBService` - message → `Payment failed orderId=O462` ## 核心功能 - 通过 JSON 配置进行动态日志解析 — 无硬编码逻辑 - KPI 提取 — 错误密度、正常运行时间得分、错误率 - 检测排名前 5 的故障组件 - 故障性质分类 — 15+ 种事件类别 - 异常洞察 — 级联故障、安全威胁 - Markdown 报告导出
标签:Homebrew安装, Python, 代码示例, 异常检测, 数据分析, 文档结构分析, 无后门, 运维监控, 逆向工具, 防御加固