客户案例 : 大数据服务平台的可观测系统建设分享
导读
热云数据
热云数据(www.reyun.com)成立于 2013 年,是一家专注移动营销的第三方大数据服务商,在大数据采集、海量数据处理、数据挖掘、用户行为分析建模及数据应用等方面拥有多年的积累和丰富的经验,为行业客户提供流畅、安全、高效、便捷的移动营销数据分析及解决方案。
案例亮点
减少繁杂工具,观测云一个平台整合所有数据
快速定制仪表盘,丰富数据监控视图解放双手
全链路追踪,特色 SourceMap 功能定位代码异常
高效协作,笔记复盘、快照分享让团队工作更简单
简单介绍一下贵公司
热云数据成立于 2013 年,是一家专注移动营销的第三方大数据服务商,致力于让移动营销变得更简单。公司总部位于北京,并在上海、广州、厦门、杭州等地设立分公司、办事处。
热云数据在大数据采集、海量数据处理、数据挖掘、用户行为分析建模及数据应用等方面拥有多年的积累和丰富的经验。旗下产品覆盖移动广告效果监测、广告防作弊、广告素材分析、广告智能投放、A/B 测试等领域,构建起贯穿移动广告投放全生命周期的营销体系。为行业客户提供流畅、安全、高效、便捷的移动营销数据分析及解决方案。
之前用过哪些监控工具,是否能完全满足需求?
我们系统大多部署在 AWS 云平台,使用过很多监控工具,初期主要使用开源产品进行搭建,比如 Prometheus + Grafana + AlertManager,同时引入过一些 APM 工具,基本都是运维同学熟悉哪些就直接安装使用了。但在实际使用的过程中,开源软件有些功能不完善,要改造只能自己做二次开发。另外各种监控工具间,有数据割裂的问题,在排查故障时,若要做数据关联分析,如果不想再手写个额外接口或再导一遍数据,那就得在不同工具之间进行切换查看,比如先要记住 A 工具里一个对象某时刻的状态信息,再切到 B 工具里去找该时刻的关联状态数据,效率有点差。我们一直在关注能尽可能实现数据统一的监控方案,就注意到了观测云。
使用观测云后,直观获得了哪些提升?
观测云有些非常新颖、实用的特性,能够非常方便的进行可观测系统建设:
-
内置提供非常丰富的数据监控视图模板,例如:MySQL 监控、容器监控、云服务器等等,提供了很漂亮的模板,开箱即用。如果自己还想增加一些额外需要关注的指标,可以通过拖拉拽控件的方式修改视图,或者可以合并一个其他现有视图,几分钟就可以搞定一个仪表盘的定制。
-
支持采集多云环境中的主机、容器、进程等维度的指标数据,实现多云环境统一监测,再用蜂窝图全量展示。

-
可以串联起不同对象的数据,通过统一标签,关联指标、链路、日志等数据,实现各对象间的数据平滑跳转分析。
-
可以通过快照方式保存「问题现场」的数据图表,并通过链接分享给其他协作同学(没有观测云账号也可以),快速进行问题分析,提高整体协作,加快解决问题的速度。

- 通过 DataFlux Function 函数处理平台,可以做一些扩展开发功能,能够将很多其他系统的数据统一整合到观测云平台进行分析。
观测云是否已经接入贵司核心系统了?
公司核心产品线所有应用都已经接入观测云,实现指标、日志、应用链路和前端用户行为数据的收集,并通过观测云的灵活的数据关联功能,将前后端数据打通,比如前端用户访问和后端应用 APM 数据以及日志等进行管理,并配置上相关告警。
能具体分享些使用观测云的真实场景吗?
a) 前端报错分析
现在每天上班我们都会主动登录观测云查看,生产环境中有什么样的潜在问题,做到提前发现,及时解决。观测云也确实帮助我们发现了一下我们之前没有发现的问题。
比如说,我们可以利用前端用户访问的概览,查看用户访问整体情况,以及错误情况。

如果有错误的页面,则会直接跳转到相关的 View 或者 Error 查看器来查看页面和报错的具体信息。

在这里,我们使用了观测云一个很有特色的 SourceMap 转换功能。一般来说,我们在生产环境的 js 文件会经过各种转换和压缩,与开发时的源代码差异较大,在调试和排错的时候不是很方便。如果需要定位错误至源码中,就可以借助于 SourceMap 文件。
观测云的 DataKit 采集器支持这种源代码文件信息的映射,方法是将对应 js 的 SourceMap 文件进行 zip 压缩打包,命名格式为 <app_id>-

b) 通过笔记进行复盘分析
再比如前端团队通过观测云的团队协作工具--笔记功能对前端错误进行复盘分析,并通过快照方式进行分享。
1. 观测平台利用笔记查看前端时序报错趋势(根据热云 3 月份- 5 月份前端进行整理)


2. 观测云用户轨迹助力排错分析

3. 观测云 SourceMap 定位代码错误

c) 对前端指标进行监控告警
观测云丰富的性能监测和告警功能,支持对脚本报错、资源错误以及性能相关指标等 20 多种前端内置告警功能,同时支持页面、城市、版本、客户端等各种维度。当前国内前端性能监测还停留在比较原始的阶段,但观测云在前端性能监测已经走到了非常丰富和成熟的阶段。

您对观测云还有什么建议?
希望观测云在能够开展更多技术分享、最佳实践活动,帮助企业将稳定性风险左移。另一方面,希望观测云能够持续提高系统的交互友好性。
作者|热云数据 SaaS 产品线技术负责人——魏佳
观测云——宋新涛