唯品会全链路应用监控系统Mercury的构建实践

5星 · 超过95%的资源 需积分: 10 84 下载量 74 浏览量 更新于2024-07-20 收藏 1.22MB PDF 举报
"唯品会平台架构部高级架构师姚捷在本次架构峰会上分享了全链路应用体系的建设,特别是在大型互联网公司海量数据环境下如何构建应用监控系统。他提出了唯品会自建的Mercury平台,解决了传统监控系统的诸多痛点,并详细介绍了该平台的设计理念和功能特性。" 在大数据背景下,全链路应用监控体系建设对于大型互联网企业至关重要。传统的监控工具,如Logview,往往面临着一系列挑战,例如仅基于Nginx日志监控,无法深入到代码层面;随着服务化的演进,流量不再经过Nginx,导致监控失效;告警系统僵化,难以追踪问题的根本原因;无法展现业务间的调用关系,也无法快速找到性能瓶颈;并且,在面临大促等高压力场景时,系统的稳定性和可靠性受到严峻考验。 面对这些问题,姚捷探讨了行业的解决方案,如淘宝的EagleEye、点评/携程的CAT、新浪微博的Watchman、Twitter的Zipkin、听云Server以及Newrelic等,但唯品会最终选择了自建平台——Mercury。选择自建的原因包括系统复杂性、海量数据处理需求、服务化体系监控的特殊性、高度可治理性、快速接入与升级、与公司体系的无缝对接以及灵活且高效的告警策略。 Mercury平台的核心特点包括: 1. 客户端探针上报应用调用链日志,实现分布式应用的调用链路跟踪。 2. 基于流式计算和大数据技术,提供实时与准实时告警,快速定位问题根源。 3. 提供全面的数据展现和分析平台,助力快速决策。 4. 无侵入式的埋点设计,简化接入和升级过程。 5. 高度可治理,支持大促期间动态调整采样率和日志采集策略。 6. 多维度、多梯度、多级别、多时效性的告警策略,以及告警收敛功能。 此外,Mercury设计时考虑了唯品会的监控生态,涵盖了开发人员、监控人员、运维人员、运营人员和管理人员等不同角色的需求,以及与发布、监控、问题跟踪等流程的紧密配合。同时,它利用大数据采集、实时计算和存储分析技术,构建了一个全面、智能的监控生态系统。 姚捷的分享揭示了在大规模数据背景下,如何通过构建自适应、智能的全链路应用监控系统,保障企业的服务稳定性和用户体验,为企业数字化转型提供了宝贵的实践经验和理论指导。
2024-10-16 上传