这个项目能做什么
## 概述
Data Relish是一个开源、可自托管的Web分析系统,使用PHP编写并搭配MySQL数据库。项目专注于简洁:一行函数调用即可记录任意事件,仪表盘通过Chart.js可视化每日独立访客、事件分布和热门国家。该项目适合需要基础流量洞察的小型到中型网站,无需依赖第三方服务。
## 主要功能
- **事件日志**——一行PHP调用`log_event("type", "target")`即可记录访问和自定义事件。
- **IP丰富化**——并行例程将IP地址转换为国家代码,支持地理报告。
- **仪表盘**——以交互式图表展示每日独立访客、事件分布和热门国家。
- **自托管**——在支持PHP和MySQL的任何服务器上运行;无外部SaaS依赖。
- **密码保护UI**——简单的密码检查(`?pass=...`)守护仪表盘。
## 安装与配置
1. **数据库**——将`data-relish.sql`导入MySQL以创建所需数据表。
2. **配置**——编辑`log_event.php`和`dashboard.php`顶部的数据库凭据。
3. **集成**——在你希望追踪的任何页面中引入`log_event.php`并调用`log_event("事件类型", "事件目标");`。
4. **访问仪表盘**——在浏览器中打开`dashboard.php?pass=changeme`并在文件中更改默认密码。
5. **国家数据**——点击仪表盘上的"Enrich Country Data"按钮,或手动运行`update_countries.php`以填充地理信息。
## 项目结构
- `data-relish.sql`——`events`表的MySQL模式定义。
- `log_event.php`——包含数据库连接和`log_event`函数。
- `dashboard.php`——生成分析界面并通过Chart.js渲染图表。
- `update_countries.php`——将存储的IP地址解析为国家代码的脚本。
## 使用示例
```php
include('log_event.php');
log_event('page_view', '/home');
```
在任何页面部署上述代码片段后,访问数据将出现在仪表盘的"独立访客"和"热门国家"部分。
## 在线演示
作者在其个人网站上运行Data Relish;仪表盘公开可达于:
https://zerovst.com/admin/data/stats.php?pass=jabberwocky!20o2
## 开发状态
项目仍处于积极开发阶段。建议用户在非关键环境中进行测试,并通过拉取请求贡献改进。
## 许可证
Data Relish根据MIT许可证发布,允许免费使用、修改和分发。
---
*Data Relish为云分析服务提供了一个简单且注重隐私的替代方案,让开发者完全掌控自己的流量数据。*
评论
0 评分人数达到10人后显示
登录后参与讨论。