领先一步
VMware 提供培训和认证来加速您的进步。
了解更多这是一篇由我们朋友,微软的 Asir Vedamuthu Selvasingh 撰写的客座文章。
您好,Spring 粉丝!我们很高兴地宣布,应用程序性能监控 (APM) 现已完全集成到 Azure Spring Cloud 中,由 Application Insights 提供支持。
Azure Spring Cloud 由微软和 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 的分布式版本来说明这一点。导航到“应用程序映射”边栏选项卡,您可以在其中看到微服务的令人难以置信的整体视图,该视图显示运行正常的应用程序(绿色)和存在瓶颈的应用程序(红色)[图 1]。开发人员可以轻松识别应用程序中的问题,并快速对其进行故障排除和修复。
导航到“性能”边栏选项卡,您可以在其中看到应用程序公开的操作的响应时间和请求计数[图 2]。
导航到“性能”边栏选项卡中的“依赖项”选项卡,您可以在其中查看所有依赖项及其响应时间和请求计数[图 3]。
您可以单击 SQL 调用或依赖项以查看上下文中的完整端到端事务[图 4]。
导航到“故障”边栏选项卡中的“异常”选项卡以查看应用程序抛出的异常集合[图 5]。
只需选择一个异常并深入了解有意义的见解和可操作的堆栈跟踪[图 6]。
导航到“指标”边栏选项卡以查看 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 中应用程序的可用性。这是一个定期测试,用于以定期间隔从全球任何地方监控应用程序的可用性和响应能力。如果您的应用程序没有响应或响应速度太慢,它可以主动向您发出警报。下图显示了来自北美各地的可用性测试 - 美国西部、美国中南部、美国中部和美国东部[图 9]。
导航到“实时指标”边栏选项卡,您可以在那里几乎实时地查看实时指标,仅需一秒钟[图 10]。
Application Insights Java 代理基于OpenTelemetry 自动检测工作,微软与 APM 领域的其他最聪明的人才合作。
Azure Spring Cloud 抽象了基础设施管理和 Spring Cloud 中间件管理的复杂性,因此您可以专注于构建业务逻辑,并让 Azure 处理动态扩展、修补程序、安全、合规性和高可用性。只需几个步骤,您就可以预配 Azure Spring Cloud、创建应用程序、部署和扩展 Spring Boot 应用程序,并在几分钟内开始监控。我们将继续为 Azure Spring Cloud 提供更多开发人员友好型和企业就绪型功能。
我们希望了解您如何使用 Azure Spring Cloud 构建有影响力的解决方案。立即开始 - 使用快速入门将 Spring 应用程序部署到 Azure Spring Cloud!