可观测性不止于监控运维!
Gartner 将可观测性列为 2023 年战略发展趋势之一,国内众多厂商开始纷纷拿出了自己的可观测性平台解决方案。但是很多传统厂商试图包装原来的监控解决方案,只是简单做了 UI 层面的包装,就开始大肆宣传其为一个可观测性的解决方案,无疑是“挂羊头卖狗肉”,只是为了忽悠客户又重新购买一个传统的监控软件。
对于正确宣扬可观测性理念的解决方案,十分欢迎一起丰富这个赛道的产品能力。对于这种混淆视听的厂商,我们要坚决打击。中国软件从业者需要引入正确的先进的可观测性理念,真正为软件研发过程赋能,为实际业务产生价值,而不是仅仅把可观测性视为一个监控运维领域的批项目批预算的新名词。
可观测性平台解决方案并不仅仅定位在监控运维领域,而是能够覆盖整个软件研发过程,真正实现为工程师赋能,不是为了监控而监控,这也是和其他传统监控厂商不一样的地方。要站在实际用户的角度上,可观测性应该能够为工程师提供以下的能力(截图为海外先进的可观测性厂商 Datadog 产品):
端到端的全链路监控能力
第一点不可否认可观测性能够提供传统软件的监控能力,但对于这种监控能力可观测性强调的要具备完整的端到端的全链路监控能力,一个真实用户对系统进行访问,跟踪这个用户从客户端、服务端、中间件到基础设施端的完备的监控能力,并且提供强大的下钻和上钻关联能力,帮助一线的工程师从丰富的上下文信息快速联动用户行为、调用链、日志等等数据快速解决故障,这样的能力不是简单拼凑几个监控系统能够解决的,需要可观测性平台具备统一采集能力、统一数仓存储能力、统一平台分析能力。
代码级别的 Debug 能力
传统的监控工具,只能定位到系统接口慢,或者定位出来异常,但是接口为什么慢,OOM 内存溢出了什么地方溢出了?传统的监控工具解决不了这样的问题,然而可观测性的要求就是要具备代码级别的 Debug 能力,接口慢在什么地方,内存哪里溢出了,如果一个系统解答不了这样的问题,那也只是传统监控,不能称之为可观测性工具。
全链路测试分析工具
面向测试场景,可观测性可以解决开发和测试之间经常性出现的难以复现的问题。利用会话重放、用户访问监测等可观测性能力,毫不客气的可以说帮助测试同学每天节省2~5小时时间。甚至也可以基于测试和压测场景,把测试和压测结果集成到可观测性平台,结合全链路监控能力,真正实现全链路的测试分析能力,快速帮助工程师快速定位系统 bug 和性能问题。
对可观测性这个新生的理念做出正确的认知是非常关键的,如果只是简单把传统运维监控同可观测性系统进行对比,无疑就是“坐井观天”。工程师需要一个能够解决实际问题的工具,而不是被片面的虚假的厂商进行迷惑,最后对可观测性这个理念产生怀疑,从而失去了向国外先进的研发工具看齐的机会,这才是这个时代最可悲的事情。
作为 Datadog 的海外客户,最近注意到,网络上传播的一个对比表,将一个传统的服务端监控系统同国内做的比较好的可观测性系统进行对比,完全站在运维的角度上,只关注运维监控本身,试图得出传统监控工具优于可观测性工具的结论,无疑是非常荒诞的。如果只关注运维监控本身,不让研发参与整个系统可靠性建设,还是避免不了运维成为一个“背锅侠”。这个对比表本身就是表达希望 Photoshop 和美图秀秀一样简单,只是定位解决一些简单的小问题,而忽略了真正提升产品系统质量和稳定性的可观测性工程本身。
国内做可观测性相关的厂商,观测云是目前最接近海外 Datadog 理念的产品,仅仅把观测云作为一个简单的监控工具可能太“复杂”了,但是相信对于追求卓越的团队需要提升生产力的可观测性工具,在云原生普及的时代,复杂的并不是系统本身而是被传统的工具逻辑束缚的无法进步的思想。