解惑“可观测性”与“监控”的不同

在上一篇《运维,放过监控-也放过自己吧》中原作者提出了自己对于可观测性的三个困惑,本文围绕这三个问题展开讨论。

1. 可观测性解决什么问题?

其实可观测性最先解决的就是一个问题:就是监控工具太太太多了,在 Datadog 的招股书上就写得很明白一般企业要部署 5 套监控软件,而大型企业因为各种跨部门甚至要 15+,这种造成了资源浪费,学习曲线,认知成本,协同成本,系统更新等一系列的问题。

当然一切整合起来的可观测性,也和原来的监控不同了。其对象瞄准的恰恰是应用系统本身,也就是我们需要将自己所制造的应用系统本身具备可观测性,为什么需要具备应用系统需要具备观测性,就是无论从应用调试,性能调优,故障定位,甚至传统监控角度来说都是非常有意义的。所以可观测性本质上强调了程序员或者整个系统建设的参与者们,包括架构师,开发,测试,运维,大家都要把自身的可观测性做好,这样也是对最终这个系统使用者,也可能是开发自己,也可能是运维,也可能是第三方伙伴更友好。因此推广可观测性本身在我看来和推广写好文档,单元测试一样,是程序员对自己开发系统负责任的一个表现。所以可观测性本质上解决了应用在 Runtime 的 Debug 问题,我觉得是个程序员都希望自己能够随时随地 Debug 自己的代码吧。

解惑“可观测性”与“监控”的不同_第1张图片

从观测云的立场上,我们从来不会去开发一个可观测性系统(当然我们要确保我们自身产品的可观测,也是我们提高工程质量和运维的基础),而是我们希望帮助工程师可以更方便的构建自己在线系统的可观测性的工具平台。因此我们提供了从指标,到日志,到链路,到客户端的用户访问,页面渲染,等等的基础能力,不为了别的就是为了让工程师能够相对简单的完成自己系统可观测的任务。我们的终极目标就是能够让大家能够用实时的数据 Debug 自己的线上环境。

解惑“可观测性”与“监控”的不同_第2张图片

2. 数据收集全面开花

如同第一点所描述的,当一个工程师需要构建自身系统的完整可观测性的时候,其实需要的能力是非常广泛的,而一般情况下对于大部分企业来说,本质上就是一个数据收集,集成,包括展示的综合性系统工程。可能所需要的技术从底层操作系统,各种语言环境,网络协议,甚至 eBPF ,Profiling等能力,这是一个非常庞大的知识结构,而且仅仅通过这些能力收集数据是不够的,包括最终能够友好的利用数据所提供的可视化,交互性真正意义上让可观测性落地才是核心。

解惑“可观测性”与“监控”的不同_第3张图片

所以从观测云角度来说,从来不仅仅是数据收集全面开花,除了收集数据以外,我们关心数据的一致性,我们还关心数据的关联关系,关注关联关系才可以更好的将不同维度的数据通过可视化友好的进行交互。传统的数据平台为什么很难使用,恰恰是缺少了这种关联和友好交互,比如日志搜索成为了主体,实际上反而是一种效率低下的方案。大家通常不愿意主动去观测日志,而观测云的目标是让优秀的工程师愿意主动通过观测云提供的可观测性能力让其能够饶有兴趣的去通过数据分析,发现各种可能可以提升工程质量或者性能的点,从而让自己的应用系统更有效。

解惑“可观测性”与“监控”的不同_第4张图片

3. 新瓶装旧酒

其实历史发展总是演进的,如果只是站在运维监控的视角上,可观测性似乎是一个数据量更大更全的但反而让运维不知道如何开始的监控系统。但我认为强调可观测性有两点与监控不同:

第一,可观测性是强调的是从应用和业务维度垂直纵深的用各种数据( Metrics ,Logging ,Tracing )去实时的描述这个应用的全貌,从基础设施,中间件,数据库,应用服务端代码,客户端,强调的是完整性和一致性。而不是传统的分层逻辑,通过不同的独立的监控系统独立关注每一层的应用。

解惑“可观测性”与“监控”的不同_第5张图片

第二,可观测性的关注点不同,这也解释了为什么很多传统运维的仪表盘其实无用,因为仪表盘并不是为了估值排查(这个当然很重要),但更重要的是让研发参与进去,利用这些灵活的仪表盘(仪表盘需要根据业务做动态设计)来进一步的优化系统和优化代码,所以某种程度上,监控只是可观测性的一种应用场景而已,如果上了可观测性只是为了监控,那绝对不会比监控更好。

解惑“可观测性”与“监控”的不同_第6张图片

所以可观测性本质上对于团队来说是真正意义上把一个系统的生产(编码),交付,保障,优化通过数据平台一体化了,完整整体的统一,是整个DevOps体系中不可或缺的一部分。国内强调 DevOps 的时候往往只关注交付侧的 CI\CD,而忽略了可观测性是作为整个 DevOps 中的核心渠道的数据平台,如果没有可观测性,其实所谓 DevOps 也不过只是人为的交付自动化 Pipeline 而已。

解惑“可观测性”与“监控”的不同_第7张图片

“观测云”是一款面向开发、运维、测试及业务团队的实时数据监测平台,能够统 一满足云、云原生、应用及业务上的监测需求,快速实现基础设施、中间件、应 用层和业务层的可观测。基础设施监测、日志与指标管理、应用性能监测、用户 访问监测、可用性监测、异常检测、系统级安全巡检、场景和仪表板等是“观测 云”的可观测解决方案,通过统一的数据采集、全面的数据监控、无缝的关联分 析、自定义的场景搭建、高度的可编程性,敏捷的成员协作,为用户提供了最 快、最轻松、最全面、最自由的系统可观测平台。

前往观测云官网,注册一个账号,就可以免费体验观测云啦~

你可能感兴趣的:(技术干货,运维开发,测试工具,devops,安全,云原生)