在 Azure Spring Cloud 中使用 Dynatrace 端到端监控 Spring Boot 应用程序!

工程 | Josh Long | 2021 年 9 月 1 日 | ...

今天,我们很高兴地宣布 **Dynatrace 软件智能平台与 Azure Spring Cloud 集成**。

在过去的 18 个月里,我们与许多企业客户合作,了解他们面临的场景。许多这些客户在本地数据中心运行着数千个 Spring Boot 应用程序。当他们将这些应用程序迁移到云端时,他们需要使用其开发人员熟悉且多年来一直在使用的解决方案来对其进行应用程序性能监控 (APM) 检测。此外,他们必须确保已针对端到端监控预先检测的桌面和移动应用程序的连续性,这些应用程序使用 Dynatrace OneAgent 等代理,这些代理会自动发现和映射所有应用程序、微服务和基础设施以及动态混合、多云环境中的任何依赖项。通过将 Dynatrace OneAgent 集成到 Azure Spring Cloud 中,您可以继续您的旅程,并轻松地使用 Dynatrace 检测您的 Spring Boot 应用程序。

**继续您的 Dynatrace 之旅**。如今,大多数部署 Spring Boot 应用程序的组织都有一个共同的目标:最大限度地利用在几乎任何规模下运行 Spring Boot 应用程序的优势,使用自动化和 APM。虽然 Azure Spring Cloud 擅长抽象掉与管理容器化工作负载相关的大部分工作,但监控和维护这些应用程序的性能和健康状况或在出现问题时进行故障排除的挑战可能令人生畏,尤其是在组织大规模部署这些应用程序时。为了帮助您取得成功并继续您的 Dynatrace 之旅,我们集成了并升级了您使用 Dynatrace OneAgent 在 Azure Spring Cloud 实例中检测、监控和提供可观察性的能力。这首先从快速轻松地设置检测开始。然后,您可以分析应用程序、JVM、事务等的性能和健康状况。

“对于 Liantis 而言,跨我们本地和基于云的 Spring Boot 微服务的真正混合监控是关键,但我们也需要简单直观的实现 - 这与 Azure Spring Cloud 抽象复杂性的真正理念一致。这样做使 Liantis 可以将更多时间花在开发创新应用程序上,而不是构建和操作基础设施,这使我们能够为我们的客户和员工提供真正的价值。基于我们内部在 Spring 和 Dynatrace 技术方面的专业知识,以及我们之前的投资,Dynatrace 与 Azure Spring Cloud 的集成对 Liantis 来说是显而易见的选择。” -- Liantis 首席信息官 Nicolas Van Kerschaver

“能够扩展对于当今的数字业务至关重要,因为组织已转向云原生工作负载和微服务。虽然云原生技术和微服务具有巨大的优势,但动态环境带来了复杂性,这使得难以了解整个组织的云生态系统中的关系和依赖关系。Dynatrace 与微软的战略合作伙伴关系使我们能够将自动和智能可观察性的影响进一步扩展,以加速数字化转型。通过 Dynatrace 与 Azure Spring Cloud 的集成,我们能够全面了解 Spring Boot 应用程序的应用程序数据,这意味着有更多时间进行创新并为最终用户提供更好的产品。” -- Dynatrace 全球战略联盟总监 Eric Horsman

“在微软,我们致力于帮助我们的客户对其应用程序进行现代化改造,并以前所未有的速度进行创新。通过将 Dynatrace 等软件智能解决方案与 Azure Spring Cloud 集成,我们可以为我们的客户提供其 Spring Boot 应用程序端到端可观察性的轻松实现,包括自动和持续的根本原因分析。” -- 微软开发者部门企业副总裁 Julia Liuson

**检测您的 Spring Boot 应用程序。**为完全免手动体验运行“预配”自动化管道,以检测和监控您创建和部署的任何新应用程序 - 使用 Terraform 或 ARM 模板。或者,您可以使用 Azure CLI 按需运行它,以获得更大的灵活性和控制力。

az spring-cloud app update --name customers-service \
      --env DT_TENANT=<your-tenant> DT_TENANTTOKEN=<your-tenant-token> \
      DT_CONNECTION_POINT=<your-connection-point>

**应用程序及其依赖项的自动发现和映射。**为了在动态环境中保持实时感知,Dynatrace 会自动发现和映射应用程序组件(包括应用程序服务器、框架和微服务)、数据库、消息传递和事件系统及其关系。在下图所示的视图中,Dynatrace 门户显示了在生产工作负载中运行的所有 Spring Boot 应用程序。

屏幕截图 1 - 显示在生产工作负载中运行的所有 Spring Boot 应用程序

**Spring Boot 应用程序完整 HTTP/S 事务行为的端到端可观察性,以了解对业务成果和用户体验的影响。**在下面的示例视图中,Dynatrace 为开发人员提供了在代码中实现的所有事务跟踪,而无需对应用程序进行任何代码更改。

屏幕截图 2 – 显示在代码中实现的事务跟踪,而无需对应用程序进行任何代码更改

**端点监控、API 监控、数据库调用监控、最终用户体验监控。**Dynatrace 会捕获 Spring Boot 应用程序发起的全部数据库查询,包括 Azure 数据库服务。在下面的示例视图中,Dynatrace 门户显示了生产工作负载中所有活动的 REST API 操作。

屏幕截图 3 – 显示生产工作负载中所有活动的 REST API 操作

在下面的示例视图中,Dynatrace 门户显示了生产工作负载发起的全部数据库查询。

屏幕截图 4 – 显示生产工作负载发起的全部数据库查询

**根本原因和影响分析**应用程序性能问题和业务成果,以更快、更可靠地解决事件。Dynatrace 提供了深度代码级可见性以及端到端跟踪,并且集成提供了 AI 辅助问题检测和自动根本原因分析,使您能够掌握部署情况,并区分健康和不健康的应用程序。

屏幕截图 5 – 显示堆栈跟踪分析的结果

**检测异常**在您的 Spring Boot 应用程序实例中。Dynatrace 将收集到的数据通过 AI 引擎进行自动化根本原因分析、代码级热点分析、顶级数据库查询和异常分析。在下面的示例屏幕截图中,Dynatrace 会自动识别 CPU 密集型代码模块,以便您无需浏览数据。

屏幕截图 6 - CPU 密集型代码模块,以便您无需浏览数据

您可以找到发起的全部顶级数据库查询、这些查询的成本以及应用程序调用这些查询的次数。在下面的示例屏幕截图中,Dynatrace 显示了生产工作负载发起的顶级数据库查询。

屏幕截图 7 – 显示生产工作负载发起的顶级数据库查询

所有应用程序代码级异常都将与许多详细信息一起记录到发生异常的堆栈跟踪中。在下面的示例屏幕截图中,Dynatrace 门户显示了生产工作负载抛出的顶级异常。

屏幕截图 8 – 显示生产工作负载抛出的顶级异常

Dynatrace 软件智能平台会自动为所有 Spring Boot 应用程序的性能指标建立基线。当应用程序的响应时间超出自动检测的基线时,平台会创建一个警报,其中包含响应时间超出基线的程度等信息。在下面的示例屏幕截图中,Dynatrace 显示了生产工作负载中一些服务的响应时间下降。

屏幕截图 9 – 显示生产工作负载中一些服务的响应时间下降

Dynatrace 可让您深入了解导致这些响应时间增加的原因,特别是建立与数据库服务的连接所花费的时间。在下面的示例中,Dynatrace 门户会指明建立与数据库的连接所花费的时间。

屏幕截图 10 – 显示建立与数据库的连接所花费的时间

Dynatrace 会自动检测所有故障。在下面的示例中,Dynatrace 信号连接外部网络的故障率增加。

屏幕截图 11 – 信号连接外部网络的故障率增加

**专注于为最终用户提供价值。**一旦检测完成,当您扩展到多个 Spring Boot 应用程序实例时,任何新的应用程序实例都会自动为您监控。Dynatrace 使应用程序开发人员能够端到端观察 Spring Boot 应用程序。您花费在管理代理安装和维护上的时间更少,而将更多精力用于更快地识别和解决事件。Azure Spring Cloud 服务可准确地定期更新 Dynatrace OneAgent。

立即构建您的解决方案并进行监控!

Azure Spring Cloud 由微软和 VMware 联合构建、运营和支持。它是一款针对 Spring Boot 应用程序的完全托管服务,抽象掉了基础设施和 Spring Cloud 中间件管理的复杂性,因此您可以专注于构建业务逻辑,并让 Azure 负责动态扩展、补丁、安全、合规性和高可用性。只需几个步骤,您就可以预配 Azure Spring Cloud、创建应用程序、部署和扩展 Spring Boot 应用程序,并在几分钟内开始监控。我们将继续为 Azure Spring Cloud 引入更多开发人员友好型和企业就绪型功能。

我们非常乐意了解您如何使用 Azure Spring Cloud 构建有影响力的解决方案。开始使用 Dynatrace 监控您的 Spring Boot 应用程序。

资源

  • 使用 MS Learn 模块或 GitHub 上的自定进度的研讨会进行学习
  • 详细了解如何在 Azure Spring Cloud 上实现解决方案
  • 查看 Dynatrace 发布的相关文档
  • 部署使用 Spring Cloud 构建的 Spring Petclinic 分布式版本
  • 利用企业最佳实践部署 Spring Boot 应用程序 - Azure Spring Cloud 参考架构
  • 将您的 Spring Boot、Spring Cloud 和 Tomcat 应用程序迁移到 Azure Spring Cloud
  • 连接 Spring 应用程序以与 Azure 服务交互
  • 如有反馈和问题,请发送电子邮件给我们。

获取 Spring 时事通讯

与 Spring 时事通讯保持联系

订阅

领先一步

VMware 提供培训和认证,以加速您的进步。

了解更多

获取支持

Tanzu Spring 通过一个简单的订阅提供对 OpenJDK™、Spring 和 Apache Tomcat® 的支持和二进制文件。

了解更多

即将举行的活动

查看 Spring 社区中所有即将举行的活动。

查看全部