OmDongaonkar03/Micrologs

GitHub: OmDongaonkar03/Micrologs

Stars: 0 | Forks: 0

# Micrologs 一个可自托管的分析与错误追踪引擎。只需添加一个 script 标签,数据即存入你自己的数据库。无 SaaS 费用,无第三方仪表盘,无黑盒。 它甚至可以在你能找到的最便宜的共享主机上运行 —— 无需 Redis、无需队列、也无需 VPS,标准共享主机即可处理高达 **~10,000 次/天** 的页面访问。专为成长而设计 —— v2 增加了缓存和队列,v3 增加了 websockets 和 webhooks。每个阶段均为可选,因此共享主机用户绝不会因为 VPS 用户解锁的功能而无法使用。 **[→ 完整设置指南](IMPLEMENTATION.md)** ## 为什么选择 Micrologs 大多数分析工具迫使你在简单与扩展之间,或在免费与自托管之间做出选择。Micrologs 是: - **永久免费** - MIT 许可,无使用限制,无席位限制 - **随处运行** - PHP + MySQL,可在每月 $2 的共享主机上运行 - **数据归你** - 数据不离开你的服务器,运行时无第三方调用 - **分析与错误追踪合二为一** - 无需分别使用 Plausible 和 Sentry - **设计即 Headless** - API 即产品。以 JSON 格式查询数据,按适合你技术栈的方式进行可视化 ## 追踪内容 **分析 (Analytics)** - 独立访客、会话、页面浏览量、跳出率 - 新访客 vs 回访者 - 平均会话时长、平均每次会话浏览页数 - 国家、地区、城市细分 - 设备类型、操作系统、浏览器 - 来源分类(自然搜索、社交、邮件、引荐) - UTM 活动追踪 - 热门页面 **错误监控** - 自动捕获的 JS 错误(`window.onerror` + `unhandledrejection`) - 来自任何后端的手动错误 - PHP、Node、Python,任何支持 HTTP 的语言 - 按 fingerprint 分组错误 - 同一错误触发 1000 次 = 1 个分组,1000 次出现 - 错误随时间变化的趋势 - 发现部署后的峰值 - 严重级别:`info`、`warning`、`error`、`critical` **其他** - 审计日志 - 追踪来自任何技术栈的任何操作 - 带点击分析的追踪型短链接 - 机器人过滤 - 单次安装支持多项目 ## 快速开始 **1. 添加代码片段** ``` ``` 页面浏览量、会话、设备、地理位置和 JS 错误现已自动追踪。 **2. 查询数据** ``` curl https://yourdomain.com/api/analytics/visitors.php?range=30d \ -H "X-API-Key: your_secret_key" ``` ``` { "success": true, "data": { "unique_visitors": 1842, "total_pageviews": 5631, "total_sessions": 2109, "bounce_rate": 43.2, "over_time": [...] } } ``` **[→ 完整 API 参考与设置](IMPLEMENTATION.md)** ## 技术栈 - **后端** - PHP 8.1+ - **数据库** - MySQL 8.0+ / MariaDB 10.4+ - **地理位置** - MaxMind GeoLite2(本地化,运行时无 API 调用) - **代码片段** - Vanilla JS,零依赖,约 3KB ## SDK 用于后端错误追踪和审计日志的官方 SDK。JS 代码片段会自动处理前端追踪 —— SDK 用于你的服务端代码。 | SDK | Package | Version | 安装 | |---|---|---|---| | Node.js | [@micrologs/node](https://www.npmjs.com/package/@micrologs/node) | v1.0.0 | `npm install @micrologs/node` | | Python | [micrologs](https://pypi.org/project/micrologs) | v1.0.0 | `pip install micrologs` | | Laravel | [micrologs/laravel](https://packagist.org/packages/micrologs/laravel) | v1.0.0 | `composer require micrologs/laravel` | ### 兼容性 | 引擎 | Node SDK | Python SDK | Laravel SDK | |---|---|---|---| | v1.3.0 *(当前)* | v1.0.0 | v1.0.0 | v1.0.0 | ## 路线图 | 阶段 | 状态 | 包含内容 | |---|---|---| | v1.0 - REST API | 已发布 | 完整分析、错误追踪、审计日志、链接追踪 | | v1.1 - 安全与性能 | 已发布 | IP 伪造修复、负载限制、查询减少、日志轮转、日志中包含请求 ID | | v1.2 - 分析深度 | 已发布 | 会话分析、新访客 vs 回访者、错误随时间变化的趋势 | | v1.3 - 完善 API | 已发布 | 项目管理(列表、开关、删除、轮换密钥)、链接编辑/详情、错误状态更新 | | v2 - 基础设施 | 计划中 | Valkey/Redis 缓存、通过 Symfony Messenger 的异步队列、Webhook 告警 | | v3 - 实时功能 | 计划中 | WebSockets、实时访客计数、实时错误流 | ## 贡献 请参阅 [CONTRIBUTING.md](CONTRIBUTING.md) - 欢迎提交 issue 和 PR。 特别期待以下方向的贡献: - 针对支持 APCu 的主机的 APCu 速率限制器 由 [Om Dongaonkar](https://github.com/OmDongaonkar03) 构建
标签:DevOps工具, ffuf, ffuf, ffuf, GDPR友好, LangChain, OpenVAS, PHP, Rust语言, SaaS替代, Webhooks, 二进制文件分析, 共享主机, 前端埋点, 后端日志, 审计日志, 开源, 异常追踪, 数据可视化, 无Cookie分析, 用户行为分析, 短链接服务, 网站分析, 自托管, 轻量级, 错误监控, 隐私优先