Trench 开源项目使用教程
1. 项目介绍
Trench 是一个基于 Apache Kafka 和 ClickHouse 构建的事件跟踪系统。它能够处理大量的事件,并提供实时分析功能。Trench 符合 GDPR 和 PECR 规范,用户可以完全控制访问、更正或删除自己的数据。该项目旨在帮助开发者快速搭建产品分析仪表板、观察性平台或其他分析产品。
2. 项目快速启动
环境准备
在开始之前,确保你的系统已经安装了 Docker 和 Docker Compose。推荐至少拥有 4GB RAM 和 4 个 CPU 核心的系统以获得最佳性能。
克隆项目
首先,克隆 Trench 项目到本地:
git clone https://github.com/FrigadeHQ/trench.git
cd trench/apps/trench
配置环境
复制 .env.example
文件为 .env
并根据需要进行配置:
cp .env.example .env
启动服务
使用以下命令启动 Trench 服务:
docker-compose -f docker-compose.yml -f docker-compose.dev.yml up --build --force-recreate --renew-anon-volumes
服务启动后,你可以在浏览器中访问 http://localhost:4000
,如果看到消息 "Trench server is running",则表示服务启动成功。
发送测试事件
在 .env
文件中找到并更新默认的公共和私有 API 密钥。使用公共 API 密钥,你可以发送一个测试事件到 Trench:
curl -i -X POST \
-H "Authorization:Bearer <YOUR_PUBLIC_API_KEY>" \
-H "Content-Type:application/json" \
-d '{
"events": [
{
"userId": "550e8400-e29b-41d4-a716-446655440000",
"type": "track",
"event": "ConnectedAccount",
"properties": {
"totalAccounts": 4,
"country": "China"
}
}
]
}' \
http://localhost:4000/events
查询事件
你可以使用 /events
端点查询事件。例如,要查询类型为 ConnectedAccount
的事件,可以使用以下命令:
curl -i -X GET \
-H "Authorization: Bearer <YOUR_PRIVATE_API_KEY>" \
'http://localhost:4000/events?event=ConnectedAccount'
3. 应用案例和最佳实践
搭建分析仪表板
使用 Trench 收集的事件数据,可以结合如 Grafana 这样的工具来搭建自定义的分析仪表板。
实时监控
Trench 支持实时数据流,可以用于构建实时监控系统,比如监控用户行为或者系统性能指标。
数据集成
通过 Trench 提供的 webhook 功能,可以将数据集成到其他系统中,比如 CRM 或者数据分析平台。
4. 典型生态项目
- PostHog:一个开源的事件分析平台,可以与 Trench 集成,提供更丰富的用户行为分析。
- Matomo:一个开源的网站分析工具,可以用来分析网站流量和用户行为。
- ClickHouse:Trench 使用的数据库,可以用于构建高性能的数据仓库解决方案。
创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考