现代化 Minecraft 服务器日志分析 API 平台
McLogs Next API 是一个现代化的无头应用程序,专为 Minecraft 服务器管理员设计,用于分享、分析和诊断服务器日志。该项目提供了一个完整的 REST API,允许用户提交、分析和检索 Minecraft 服务器日志。
主要特点:
- 简化日志分享:通过唯一 URL 轻松分享大型日志文件
- 智能错误分析:利用先进的分析库自动检测问题并提供解决方案
- 隐私保护:内置过滤机制,自动隐藏敏感信息
- 纯 API 接口:无头架构,专注于提供强大而可靠的 API 服务
- 日志分享:通过唯一 URL 分享大型日志文件,无需复杂上传流程
- 智能分析:集成 aternos/codex 库,自动识别服务器软件类型,精准检测错误并提供解决方案
- 隐私保护:智能过滤算法,自动隐藏日志中的敏感信息(如 IP 地址)
- API 优先:纯 API 接口,支持多种客户端集成
- 多后端存储:灵活的存储策略,支持 MongoDB(默认)、Redis 和本地文件系统
- 错误率统计:提供服务器错误率统计信息
| 层级 | 技术 | 描述 |
|---|---|---|
| 后端 | PHP 8.4+ | 提供稳健的 REST API 服务 |
| 数据库 | MongoDB | 高性能日志存储(默认) |
| 缓存 | Redis | 可选的高速缓存层 |
| 基础设施 | Docker, Docker Compose, Nginx | 容器化部署与统一服务管理 |
| 日志分析 | Aternos Codex | Minecraft 日志智能分析引擎 |
mongodb/mongodb: 2.1.2aternos/codex-minecraft: ^5.0.1 (日志分析)aternos/sherlock: ^1.0.2 (日志分析)aternos/codex-hytale: ^1.0 (Hytale 日志分析)- 必需扩展: json, zlib, mbstring, mongodb, redis
- Docker (20.10+)
- Docker Compose (2.0+)
-
克隆项目
git clone https://github.com/NingZeStudio/McLogs-Next-API.git cd McLogs-Next-API -
安装 PHP 依赖
composer install
-
启动服务
cd docker docker compose up -d -
验证部署 访问
http://localhost:9300(或配置的域名) 来确认 API 正常运行
GET /- 获取 API 欢迎信息和可用端点列表POST /1/log- 提交新的日志数据POST /1/analyse- 分析日志数据GET /1/errors/rate- 获取错误率统计信息GET /1/limits- 获取 API 速率限制GET /1/raw/{id}- 按 ID 检索原始日志GET /1/ai-analysis/{id}- 获取特定日志的 AI 分析GET /1/insights/{id}- 获取特定日志的洞察DELETE /1/delete/{id}- 按 ID 删除日志
提交日志:
curl -X POST http://localhost:9300/1/log \
-H "Content-Type: application/json" \
-d '{"content": "你的日志内容"}'获取原始日志:
curl http://localhost:9300/1/raw/LOG_ID配置通过 core/config/ 目录中的 PHP 文件管理:
storage.php- 存储后端配置(MongoDB、Redis、文件系统)ai.php- AI 分析设置cache.php- 缓存配置filter.php- 日志过滤设置id.php- ID 生成设置legal.php- 法律合规设置
此仓库仅包含 API 后端服务。您可以选择以下方式来使用 API:
- 自主开发前端界面:使用我们提供的 API 创建您自己的用户界面
- 使用官方 WebUI:我们提供了开源的前端界面,可在 NingZeStudio/McLogs-Next-UI 获取
当前 API 版本在性能方面仍有优化空间。我们计划在未来版本中持续改进 API 响应速度和整体性能表现。如果您在使用过程中发现性能问题,请随时在 Issues 中报告。
我们欢迎社区贡献!以下是参与项目的方式:
- Fork 项目
- 创建功能分支 (
git checkout -b feature/AmazingFeature) - 提交更改 (
git commit -m 'Add some AmazingFeature') - 推送到分支 (
git push origin feature/AmazingFeature) - 创建 Pull Request
- PHP 8.4+ 是必需的
- 使用 PSR-4 自动加载,通过
core.php中的自定义加载器实现 - 遵循 RESTful API 设计原则
- 采用 Docker 优先的部署方式
本项目基于 MIT License 开源。
如果您遇到任何问题或有改进建议,请:
- 查看 Issues 页面
- 提交新的 Issue
- 查阅文档
- 感谢 aternos/codex-minecraft 提供的日志分析能力
- 感谢 Docker、PHP、MongoDB 等优秀开源项目的贡献