基于神策SDK的埋点数据采集后端,支持自定义字段,包含字段类型长度。
TODO:
- sdk接入验证,验证各端SDK(js、Android、ios)接入的数据格式可解析
- js sdk
- Android sdk
- IOS sdk
- field配置表新增jsonpath字段,定义字段路径。
- 新增元数据缓存,event定义表、属性定义表、枚举字典表。(进程内缓存 OR Redis分布式缓存)
- 服务分层。因为埋点数据接收服务没有ui展示,只提供接口服务,所有没有View层
- Controller层:控制层,接收请求并调用相应Service层处理请求(router 路由层)
- Service层:业务层,业务逻辑处理(handler)
- Dao层:数据访问层,包括数据库访问、缓存访问等
- Model层:数据模型层,定义数据模型(项目工程不大时,该层可与Dao层写到一起)
- 中间件层:一些通用组件,比如日志组件等
- event valid,验证event字段是否存在,event值是否已经定义
- field valid,验证非空字段是否已传,验证枚举值是否已定义,验证字段类型是否正确,验证字段长度是否超长
- 行为埋点日志数据发送kafka(验证通过/event未定义/属性验证失败)
- 集成日志组件zap、lumberjack,支持日志写入文件,并可拆分
- 集成consul配置中心