什么是可观测性?
可观测性提供了对现代分布式应用程序的深入可见性,进而加快自动问题识别和解决流程
深入了解 IBM Instana Observability 可观测性工具 注册获取可观测性指南
黑色和蓝色背景
什么是可观测性?

一般来说,可观测性是指您仅根据所了解的外部输出对复杂系统内部状态或条件的理解程度。 系统的可观测性越高,您就能越迅速、越准确地从发现的性能问题找到根本原因,而不必进行额外的测试或编码。

在 IT 和云计算中,可观测性还表示一些软件工具和实践,用于汇总、关联和分析分布式应用程序以及运行此类应用程序的硬件和网络所产生的持续性能数据流,旨在更高效地监控、诊断和调试应用程序和网络,从而满足客户体验期望、服务级别协议 (SLA) 和其他业务需求。

作为一个相对较新的 IT 主题,可观测性常常被误认为是炒作的概念,或者就是系统监控、应用程序性能监控 (APM)网络性能管理 (NPM) 的“另一种说法”。 事实上,可观测性是 APM 和 NPM 数据收集方法的一种自然演变,旨在更好地适应云原生应用程序部署越来越迅速、分布越来越广的动态本质。 可观测性不能取代监控 - 它能够实现更出色的监控以及 APM 和 NPM。

“可观测性”一词来自于控制论,这是与根据系统反馈自动控制动态系统相关的一个工程领域,例如,流经管道的水流、汽车上下坡的速度等。

查看可观测性产品导览

利用 IBM Instana Observability 可观测性工具,企业中的每个人都能以用户友好的方式访问他们想要的数据和需要的环境,快速预防和修复问题。

相关内容

订阅 IBM 时事通讯

IBM Turbonomic Application Resource Management

为什么需要可观测性?

在过去 20 年左右的时间里,IT 团队主要依靠 APM 来监控和诊断应用程序。 APM 会定期采样和汇总已知与应用程序性能问题相关的应用程序和系统数据,即遥测数据。 它根据关键性能指标 (KPI) 来分析遥测数据,将结果汇总到仪表板中,以便向运营和支持团队发出警报,提醒他们注意那些解决或预防问题所需处理的异常情况。

APM 足以有效监控和诊断单体式应用程序或传统的分布式应用程序,这类应用程序会定期发布新代码,而且应用程序组件、服务器和相关资源之间的工作流程和依赖关系十分明确或者易于跟踪。

但如今,组织正在迅速采用各种现代开发实践(例如敏捷开发、持续集成持续部署 (CI/CD)、DevOps、多种编程语言)以及云原生技术(例如微服务Docker 容器、Kubernetes无服务器功能)。 因此,他们正以前所未有的速度将更多服务推向市场。 但在这个过程中,他们会频繁地在众多地点以许多不同的语言部署新应用程序组件,而且部署的周期差异非常大(无服务器功能的周期只有几秒甚至不到一秒),APM 的一分钟一次的数据采用频率已经跟不上步伐。

他们需要更多更高质量的遥测数据,这些数据可用于为每个应用程序用户请求或事务创建高精度、背景信息丰富且完全相关的记录。 于是,可观测性闪亮登场。

可观测性如何工作?

可观测性平台通过集成应用程序和基础架构组件中内置的现有检测功能,并提供一些工具来为这些组件增添新的检测功能,从而持续发现和收集性能遥测数据。 可观测性关注以下四种主要遥测类型:

  • 日志。 日志是应用程序事件记录,具有粒度细、带时间戳记、完整而且不可改变等特点。 日志可用于创建每个事件的高精度毫秒级记录,并以相关背景信息作为补充,可供开发人员“回放”以进行诊断和调试;当然,除此之外,日志还有其他许多用处。
  • 指标。 指标(有时也称为时间序列指标)是一段特定时间内的应用程序和系统运行状况的基本测量数据,例如,应用程序在 5 分钟内使用了多少内存或 CPU 容量,或者应用程序在使用高峰期间的延迟是多少
  • 跟踪。 跟踪会记录每个用户请求的端到端“旅程”,即从 UI 或移动应用程序开始,经过整个分布式架构,再回到用户的过程。
  • 依赖关系(也称为依赖关系图)显示每个应用程序组件对其他组件、应用程序和 IT 资源的依赖程度。

收集这些遥测数据后,可观测性平台会实时地将这些数据关联起来,向 DevOps 团队、站点可靠性工程 (SRE) 团队和 IT 人员提供结合了背景的完整信息 - 包括可能表明、导致或用于解决应用程序性能问题的事件、发生位置和发生原因。 

许多可观测性平台都会自动发现系统中可能出现的新遥测数据源(例如对另一个软件应用程序的新 API 调用)。 由于它们处理的数据量远远超过标准的 APM 解决方案,因此许多可观测性平台都包含 AIOps(面向运营的人工智能)功能,以从噪音(与问题无关的数据)中筛选出信号(指示实际问题的数据)。

 

可观测性的优点

可观测性的最大优点在于:如果所有其他条件都一样,与可观测性差的系统相比,可观测性强的系统更容易理解(笼统和细节层面均如此),更容易监控,更新新代码更简单、更安全,也更容易修复。 再具体一点,可观测性直接支持敏捷/DevOps/SRE 以更快速度交付更优质软件的目标,可观测性使组织能够做到:

  • 发现和解决“不知道的未知问题”- 即您并不知道存在的问题。 监控工具的主要局限性在于:它们仅监测“知道的未知问题”- 即您已经知道要监测的异常条件。 可观测性会发现您可能从不知道或想过要监测的条件,然后跟踪它们与特定性能问题的关系,并提供背景信息以找出根本原因,从而加快解决问题的速度。
  • 在开发过程中尽早捕捉和解决问题。 可观测性在软件开发流程的早期阶段就融入了监控。 DevOps 团队可尽早发现和修复新代码中的问题,以免它们影响客户体验或 SLA。
  • 自动扩展可观测性。 例如,您可以在 Kubernetes 集群配置过程中指定检测和数据汇总,并从集群启动时开始收集遥测数据,直到集群关闭。
  • 启用自动化补救和自我复原式应用程序基础架构。 将可观测性与 AIOps 机器学习和自动化功能相结合,根据系统输出来预测问题并加以解决,无需管理人员干预。
相关解决方案
AI 驱动的自动化操作

我们已经将人工智能驱动的自动化融入您从业务工作流程到 IT 运营的整个过程。

探索人工智能驱动的自动化
Observability with IBM Instana™

了解面向混合云的领先企业可观测性平台。

探索 Observability with Instana
IBM Cloud Pak® for Watson AIOps

IBM Cloud Pak® for Watson AIOps 是一款 IT 运营管理解决方案,可帮助 IT 运营商在其 ITOps 工具链的核心位置植入 AI。

探索 IBM Cloud Pak® for Watson AIOps
IBM SevOne Network Performance Management

借助以应用程序为中心的网络可观测性,深入洞察并采取行动,从而优化 IT 运营。

探索 IBM SevOne Network Performance Management
借助 IBM® Turbonomic® 管理应用程序资源

利用可观测性主动优化应用程序资源、保障性能并节省资金。

探索 IBM Turbonomic
资源 可观测性与监控:有何区别?

监控和可观测性是用于确定问题根本原因的两种方法,它们有何相似之处和不同之处?

为何要选择可观测性以及如何实现可观测性?

与 IBM 讲解员一起,了解为何要选择可观测性以及如何实现可观测性。

开发人员需要知晓的可观测性知识

此电子书将对这个全新的领域 进行探索。 我们会将所有关于监控的不好体验 抛在脑后,然后迈出我们 进入可观测性领域的第一步, 探索为何它对开发人员越来越重要。

IBM 的可观测性和 AI 运营解决方案:它们如何密切配合来解决事件

IBM 在 AIOps 领域提供的三个协同解决方案:IBM Observability by Instana APM、Turbonomic Application Resource Management for IBM Cloud Paks 和 IBM Cloud Pak® for Watson AIOps。

采取下一步行动

IBM Instana 提供人人都能使用的实时可观测性。它可以快速实现价值,同时确保您的可观测性策略能够跟上当下和未来环境的动态复杂性。从移动设备到主机,Instana 支持超过 250 种技术,并且还在不断增加。

探索 IBM Instana 开始免费试用