周辉 新思路打造移动端个案综合日志分析系统

1. 新思路路打造移动端个案综合⽇日志 分析系统 周辉 美团点评资深移动架构师
2. 讲师简介 周辉 美团点评资深移动架构师 近13年年移动端开发经验 负责⽹网络通信、⽇日志、监控等移动基础设施
3. ⼤大纲 背景 Logan系统介绍 开源计划
4. 移动端⽇日志的特点 (相对于服务端⽇日志) 运⾏行行环境差异巨⼤大 上报困难 终端众多,存储压⼒力力⼤大 多机型 多系统版本 多ROM 多运营商 多APP版本 差异本地环境
5. ⾯面临的问题和挑战 细致打点需求 上报和存储压⼒力力
6. ⾯面临的问题和挑战 ⽇日志种类多样: ⽹网络请求 ⽇日志 后端⽇日志记录 ⽤用户⾏行行为 ⽇日志 代码级 ⽇日志 性能 ⽇日志 ⽹网络采样上报 ⽹网络请求 ⽇日志 ⽤用户⾏行行为 ⽇日志 代码级 ⽇日志 性能 ⽇日志 旧有⽇日志体系的缺陷 1,上报⽇日志不不完整 2,后台查询不不及时 3,各⽇日志体系割裂 4,缺移动分析系统
7. 我们需要什什么样的移动⽇日志系统 ✴复⽤用旧有⽇日志 ✴统⼀一⽇日志记录 ✴实时集中获取 ✴综合分析系统 Logan⼤大前端⽇日志分析系统 ⽇日志搜集 ⽇日志分析 ⽇日志来源 ⽹网⻚页服务 ⽹网络 端到端 ⽤用户⾏行行为 终端⽇日志 崩溃⽇日志 H5⽇日志 … ⽇日志获取 • ⽇日志回捞 • 主动上报 • 筛选&搜索 ⽇日志展示 • ⼤大盘展示 • 分析可视化 • 数据挖掘 本地写⼊入 交互界⾯面 LoganSDK 格式化 压缩加密 ⽂文件写⼊入 ⽇日志上报 Push回捞、主动上报 后台服务 存储 解密 分析
8. LoganSDK • 对接原有⽇日志系统 LoganSDK 已开源:https://github.com/Meituan-Dianping/Logan
9. LoganSDK • 对接原有⽇日志系统 • 实现⾼高性能 Logan改造前(JAVA) Logan 改造后(C) CPU使⽤用率对⽐比(越⼩小越好) 7.56% 内存占⽤用对⽐比(波峰越少越好) Logan改造前(JAVA) 17.19% Logan 改造后(C) *16000条⽇日志写⼊入测试,使⽤用腾讯GT测试⼯工具和AS监控⼯工具 MMAP 内存读写性能 系统托管
10. LoganSDK • 对接原有⽇日志系统 • 实现⾼高性能 • 按⽇日加密压缩存储 压缩 90%以上 单⽇日⽂文件上限 10MB 加密 ⽇日期、设备维度加盐 保存期限 7天
11. Logan⽇日志上报 按需⽇日志上报 保护⽤用户隐私
12. Logan分析系统
13. Logan分析系统 ★基础能⼒力力 ⽇日志解析 时间定位
14. Logan分析系统 ★基础能⼒力力 ⽇日志解析 时间定位 类别筛选 排序 搜索 前后端⽇日志打通
15. Logan分析系统 ★基础能⼒力力 ★数据可视化
16. Logan分析系统 ★基础能⼒力力 ★数据可视化 ★数据挖掘 通过分析所有⽇日志获取⽤用户环境信息 ⽹网络请求中的环境信息 ⽤用户⾏行行为⽇日志中的信息
17. Logan分析系统 可扩展性强 ✦业务分析 ✦图形化展示 ✦开发⼯工具 ✦⼤大数据分析 ✦机器器学习 数据内部开放平台 案例例分析 报表展示 ⽤用户操作回放 性能分析 ⾏行行为轨迹 崩溃分析 后台数据⽐比对 ⾃自动化测试 Debug⼯工具 代码分析 ⽹网络分析 ⽤用户画像
18. Logan分析系统 在美团点评内使⽤用情况 4 ⽀支持平台 iOS Android Web ⼩小程序 49 接⼊入App数⽬目 美团 ⼤大众点评 美团外卖 … 26 ⽇日志种类 ⽹网络⽇日志 ⾏行行为⽇日志 崩溃⽇日志 …
19. 真实案例例 Case1: ⽹网络故障导致的请求失败
20. 真实案例例 Case2: 情景感知功能故障 情景感知 位置展示错误 定位⽇日志 运⾏行行时⽇日志 ⽹网络⽇日志 ⾏行行为⽇日志
21. 总结 四⼤大特征 ✴复⽤用旧有⽇日志 ✴统⼀一⽇日志记录 ✴实时集中获取 ✴综合分析系统 Logan⼤大前端⽇日志分析系统 ⽇日志搜集 ⽇日志分析 ⽇日志来源 ⽹网⻚页服务 ⽹网络 端到端 ⽤用户⾏行行为 终端⽇日志 崩溃⽇日志 H5⽇日志 … ⽇日志获取 • ⽇日志回捞 • 主动上报 • 筛选&搜索 ⽇日志展示 • ⼤大盘展示 • 分析可视化 • 数据挖掘 本地写⼊入 交互界⾯面 LoganSDK 格式化 压缩加密 ⽂文件写⼊入 ⽇日志上报 Push回捞、主动上报 后台服务 存储 解密 分析
22. 总结 ⼤大前端监控和分析体系 监控 实时⼤大盘监控 (CAT) 分析 后台⽇日志分析 (从后台获取) Logan回捞分析 (从前台获取) Logan注意点: ✴关注个案分析 ✴前台⼀一次获取 ✴可能获取失败
23. 开源计划 客户端SDK *已开源 H5 SDK *2018年年Q4 ⼩小程序SDK *2019年年Q1 分析后台服务 *2019年年Q1-Q2 分析⻚页⾯面服务 *2019年年Q1-Q2 ⽇日志来源 *规划中
24. 总结
25. 总结 Q&A