产品发布

可观察性更新:APM 中的 .NET、Kubernetes 监测、Metrics Explorer

我们兴奋地与您分享我们在下列方面的无限热情:改进操作人员可用的工具,确保应用程序和服务的可用性、健康和速度。无论您是否将这一目标定义为“可观察性”,都请继续阅读下去!

Elastic APM 新增了对 .NET 的支持,推出了用户呼声极高的 .NET 代理的公测版。在基础设施监测方面,我们添加了 Metrics Explorer,这是 Kibana 中 Infrastructure 应用内的一个新视图,旨在改善您与基础设施指标进行临时交互时的体验。最后,我们在 7.2 中继续扩展了 Kubernetes 监测工具集合,因为我们针对云端原生技术(例如 CoreDNS 和 CRI-O)推出了数项新的数据集成功能。

已经迫不及待了吧,7.2 版本目前已在我们的 Elasticsearch Service 上推出;Elasticsearch Service 是唯一包括这些功能的托管型 Elasticsearch 产品。或者您也可以下载 Elastic Stack 的最新版本

Elastic 实现可观察性的方式

“可观察性”这个词描述的是这样一种理念:强调对系统、服务和应用程序的运行状况拥有统一的可见性。尽管这是业界新出现的一个术语,但它有效抓住了很多用户和团队选择 Elastic Stack 来满足自身运行需求的主要原因。由于 Elasticsearch 具有十分灵活的性质(在这里,所有内容都只是一个索引),用户能够将之前截然不同的数据源(包括日志、指标、痕迹和运行状态指标)都成功集中到单一的运行存储库中。

通过 Elastic Stack,将您所有的基础设施日志、指标、运行状态数据以及 APM 痕迹都集中到一起

我们在可观察性方面采用了一个双重战略:既要针对可观察性的每个“支柱”继续提供出色的体验,还要同时支持用户以更加自然、更加流畅的方式讲这些数据流整合到一起。所有可观察性数据都遵守 Elastic Common Schema (ECS) 规范,并且所有 Kibana 应用程序已集成到一起,从而为用户提供一键式导航和数据关联工作流。

在 Elastic Stack 中应用可观察性

“Red Wing Shoes 是一家业界领先的安全鞋履生产商;依靠 Elastic Cloud 中的托管式 Elasticsearch Service,这家公司得以集中获得关于多个方面的可见性,包括工厂车间的生产流程、电商网站的运行状况,以及全球 600 多个零售地点的运营工作。负责运营工作的团队还带头推出了新的应用程序和服务,从而帮助企业实现增长。“我们能够通过十分精简的团队完成这一工作,因为我们专注于实现高效的 IT 运营。”副总裁暨首席信息官 Marc Kermisch 说道,“由于我们可在单一数据存储库和 UI 界面中看到所有相关运营数据,这能够帮助我们基于可付诸实践的数据更加有效地对问题进行分类和解决。由于能够在 Elastic Cloud 中帮我们对堆栈进行完全管理,这意味着我们可以降低管理开销——Elastic Stack 的所有部署、扩展以及升级工作可以一键式完成。”

请阅读我们的使用 Elastic Stack 实现可观察性博文,了解我们在这一趋势方面的进展。

在 7.2 中,我们通过下列产品优化,继续拓宽并深化我们的可观察性举措。

Elastic APM 新增了对下列内容的支持:.NET、单页应用程序,以及具体代理的指标

我们非常兴奋地宣布我们已将面向 .NET 的 Elastic APM 代理从预览版本升级到公测版本。.NET 代理针对 ASP.NET Core 2.x+ 和 Entity Framework Core 2.x+ 新增了自动校准功能,其同时还提供一个公共代理 API 从而允许用户手动对使用其他框架的任何 .NET 应用程序进行校准。

.NET 是用户对 Elastic APM 提出的呼声极高的功能之一,我们很高兴能够进一步丰富所支持的语言库。有很多社区用户填写了我们的调查问卷以帮助我们确定语言支持工作的优先级,并且还针对预览版本提供了宝贵反馈,我们在此对他们表示真诚的感谢。

Elastic APM 中的 RUM(真实用户监测)代理扩展了我们针对单页应用 (SPA) 的支持,不仅可以允许用户采集页面负载事务,还能允许他们采集路径变更事务。SPA 相较于多页应用 (MPA) 具有很多优势,包括更加精简的用户体验,以及通过在用户导航页面时动态渲染数据元素来缩短加载时间。实现过程的动态特性决定了我们需要采用一种更为细致的方法来衡量最终用户的体验,例如检查内部应用程序路径的变更。

最后一点,除了关联至 APM 痕迹数据的常见关键性能指标(例如整体资源利用率)外,APM 代理现在还可收集具体语言的指标。例如,Java 代理现在可以收集 JVM 指标,例如 Java 堆内存以及线程数(这些内容也会自动在 APM 应用内显示)。添加了这些具体代理的指标后,开发人员无需安装其他代理,便能获得有关应用程序行为的更多上下文信息,从而实现更加丰富的监测体验。

具体语言的指标

请阅读 Elastic APM 发布博文详细了解 APM 的优势。

Metrics Explorer 帮助用户更充分地探索基础设施指标

过去几年,扩展指标相关支持一直都是 Elastic Stack 工程团队的工作重点。从通过新的数据格式(例如针对数值型数据加以优化的 Bkd 树)提高存储效率,到借助新的 Metricbeat 模块扩展指标数据集成集合,再到使用 Time Series Visual Builder(时序可视化构建器)等专用 Kibana 应用来改善时序数据可视化功能,这些只是我们持续专注于这一领域的几个例子而已。

我们的用户很喜欢这些功能,而且在 7.2 中,我们通过在 Elastic Infrastructure 应用中推出 Metrics Explorer,加大了对临时性指标探索活动的支持。通过此用户界面,您只需使用常用标签和图表群组,便能浏览最重要的基础设施指标并与之进行交互。每个 Metrics Explorer 图表都能通过 Time Series Visual Builder 打开以开展进一步调查,将轻松查看指标与一键实现全部 Elasticsearch 聚合的强大功能结合在一起。无论您的标签和维度的数量和基数有多少,所有这些探索工作都能以闪电般的速度完成。

Kibana 7.2 中的 Metrics Explorer

Metrics Explorer 目前为公测版,欢迎大家在 Discuss 上提供宝贵反馈! 有关其他改进,请阅读我们的 Elastic Infrastructure 发布博文

Elastic 增强 Kubernetes 的可观察性

在众多公司的开源创新的推动之下,Kubernetes 生态系统的发展速度十分之快。每个月都有新项目添加到 CNCF 生态系统中,并且这些项目升级为正式版的速度也令人瞩目。

Elastic 致力于帮助团队迁移至 Kubernetes,包括满足他们对这一动态技术堆栈进行监测的需求。举例说明,Filebeat 和 Metricbeat 中的自动发现等功能,以及面向云原端生技术的模块(例如 Prometheus)可让用户通过一站式方式同时监测 Kubernetes 基础设施及其内运行的服务。

7.2 在这些工作的基础上构建而成,推出了多项面向云原端生技术的新整合。Filebeat 和 Metricbeat 推出了面向 CoreDNS(Kubernetes 的默认集群 DNS,最近才在 CNCF 中升级为正式版)的支持。我们还正在与社区成员开展密切合作来扩展对 NATS 消息系统的支持,此系统是一个开源的云端原生消息系统。

最后一点,Filebeat 7.2 新增了对 CRI-O(针对 Kubernetes 的开源 Container Runtime Initiative)的支持。这个轻量型的 Docker 替代方案由 RedHat 开发,已经是热门 OpenShift 分发版本中的默认容器 runtime。通过 CRI-O 模块,Kubernetes 用户可以转而将 CRI-O 作为他们的容器 runtime,同时无需牺牲监测要求。

借助 Elastic Stack 实现 Kubernetes 的可观察性

如需详细了解 Kubernetes 数据整合的优势,请阅读我们的 Elastic InfrastructureElastic Logs 发布博文。

但是等等,还有更多呢!

最近推出的 Elastic Uptime(可以围绕主动可用性监测提供一站式体验)现在能够与 Elastic Logs、Infrastructure 和 APM 应用实现一键集成。借助这些集成,用户能够十分轻松地将主动监测集成到自己的日志分析和可观察性工作流中。请阅读我们的 Elastic Uptime 发布博文详细了解这些功能以及其他改进。

6.5 中推出的 Elastic Logs(能够简化日志数据的处理过程)通过显式列配置,新增了对结构化日志和事件的支持。其中还推出了“按字段筛选”功能,从而帮助实现一个重要的“查看周围日志”工作流,因为很多用户都依赖此工作流进行调查。请阅读我们的 Elastic Logs 发布博文详细了解这些功能以及其他改进。

亲自试用

要想试用这些最新功能,最简单的办法就是在 Elastic Cloud 上快速部署一个 Elasticsearch Service 集群。我们于发布当天便会在那里提供 Elastic Stack 的最新版本。如果喜欢,只需继续使用就可以啦——我们会为您处理运行、规模调整以及集群升级等事宜。如果更喜欢自己运行,您可以了解我们的自管型选项,例如下载二进制文件,运行 Docker 容器,以及在 Kubernetes 的基础上部署 Elastic Stack