领先一步
VMware 提供培训和认证,助您加速进步。
了解更多这是一篇由微软的朋友 Asir Vedamuthu Selvasingh 撰写的客座博文
您好,Spring 爱好者!我们很高兴地宣布,Application Performance Monitoring (APM) 已通过 Application Insights 完全集成到 Azure Spring Cloud 中。
Azure Spring Cloud 由 Microsoft 和 VMware 共同构建、运营和支持。它是一项完全托管的服务,适用于 Spring Boot 应用程序,让您可以专注于构建业务运行所需的应用程序,而无需处理基础设施管理。
Azure Spring Cloud 中的 APM 提供对 Spring 应用程序的深入性能监控,无需任何代码更改、重新编译、重新测试或重新部署。Azure Spring Cloud 上的 APM 无缝集成,您可以开箱即用地获取应用程序的洞察。您无需做任何事情——只需部署您的应用程序,监控数据就会开始流动。应用程序监控能为您带来的好处是:
虽然 Azure Spring Cloud 和 Application Insights Java 代理都已普遍可用,但它们的开箱即用监控集成仍处于预览阶段。
您可以在创建或更新 Azure Spring Cloud 时启用 Java 进程内监控代理。
az spring-cloud create --name ${SPRING_CLOUD_SERVICE}
--sku standard --enable-java-agent
--resource-group ${RESOURCE_GROUP}
--location ${REGION}
然后,您可以打开由 Azure Spring Cloud 创建的 Application Insights,开始监控应用程序及其依赖项——我们将使用一个分布式版本的 Spring Petclinic来说明这一点。导航到 Application Map 窗格,您可以在其中看到微服务的令人惊叹的整体视图,显示运行正常的应用程序(绿色)和存在瓶颈的应用程序(红色)[图 1]。开发人员可以轻松识别应用程序中的问题,并快速进行故障排除和修复。
导航到 Performance 窗格,您可以在其中查看应用程序公开的操作的响应时间和请求计数 [图 2]。
导航到 Performance 窗格中的 Dependencies 选项卡,您可以在其中查看所有依赖项及其响应时间和请求计数 [图 3]。
您可以单击 SQL 调用或依赖项,以在上下文中查看完整的端到端事务 [图 4]。
导航到 Failures 窗格中的 Exceptions 选项卡,查看应用程序抛出的异常集合 [图 5]。
只需选择一个异常并深入查看,即可获得有意义的洞察和可操作的堆栈跟踪 [图 6]。
导航到 Metrics 窗格,查看 Spring Boot 应用程序、Spring Cloud 模块及其依赖项贡献的所有指标。下图展示了 Spring Cloud Gateway 贡献的 gateway-requests 和 JDBC 贡献的 hikaricp_connections [图 7]。同样,您可以聚合 Spring Cloud Resilience4J 指标并进行可视化。
Spring Boot 应用程序会注册大量核心指标——JVM、CPU、Tomcat、Logback 等。您可以使用 Micrometer 贡献自己的自定义指标,例如在类级别使用 @Timed Micrometer 注解。然后,您可以在 Application Insights 中可视化这些自定义指标。例如,请参阅下面的自定义指标如何跟踪宠物主人、宠物及其临床就诊情况——您还可以看到由于自动缩放生效导致应用程序在晚上 9 点利用率更高而产生的模式变化 [图 8]。
您可以使用 Application Insights 中的可用性测试功能来监控 Azure Spring Cloud 中应用程序的可用性。这是一项定期测试,用于监控应用程序在全球任何位置的可用性和响应能力。如果您的应用程序没有响应或响应缓慢,它可以主动向您发出警报。下图显示了北美各地——西 US、South Central、Central US 和 East US 的可用性测试 [图 9]。
导航到 Live Metrics 窗格,您可以在其中几乎实时地看到实时指标,仅需一秒钟 [图 10]。
Application Insights Java 代理基于OpenTelemetry 自动检测工作,Microsoft 在其中与 APM 领域其他杰出的技术人员合作。
Azure Spring Cloud 抽象了基础设施管理和 Spring Cloud 中间件管理的复杂性,因此您可以专注于构建业务逻辑,让 Azure 负责动态扩展、补丁、安全、合规和高可用性。只需几个步骤,您就可以配置 Azure Spring Cloud、创建应用程序、部署和扩展 Spring Boot 应用程序,并在几分钟内开始监控。我们将继续为 Azure Spring Cloud 带来更多对开发人员友好且面向企业的特性。
我们很想听听您如何使用 Azure Spring Cloud 构建有影响力的解决方案。立即开始——使用快速入门将 Spring 应用程序部署到 Azure Spring Cloud!