在 Azure 应用服务中为 Tomcat 或 Java SE 应用配置 APM 平台

本文介绍了如何将 Azure 应用服务上部署的 Java 应用程序与 Azure Monitor Application Insights、NewRelic 和 AppDynamics 应用程序性能监视 (APM) 平台进行连接。

Azure 应用服务以三种形式在完全托管的服务上运行 Java Web 应用程序:

  • Java Standard Edition (SE):可以运行部署为 Java 存档 (JAR) 包的应用,其中包含嵌入式服务器(例如 Spring Boot、Quarkus、Dropwizard 或具有嵌入式 Tomcat 或 Jetty 服务器的应用)。
  • Tomcat:内置 Tomcat 服务器可以运行部署为 Web 应用程序存档(WAR)包的应用。

配置 Application Insights

Azure Monitor Application Insights 是一项云本机应用程序监视服务,它使客户能够观察故障、瓶颈和使用模式,以便提高应用程序性能并减少平均解决时间 (MTTR)。 只需单击几下或使用 CLI 命令,就可以启用对 Node.js 或 Java 应用的监视,自动收集日志、指标和分布式跟踪,而无需在应用中包含 SDK。 若要详细了解可用于配置代理的应用设置,请查看 Application Insights 文档

要从 Azure 门户启用“Application Insights”,请转到左侧菜单的“Application Insights”,选择“启用 Application Insights”。 默认使用与 Web 应用名称相同的新 Application Insights 资源。 可以选择使用现有的 Application Insights 资源,也可以更改名称。 选择底部的“应用”。

配置 NewRelic

若要配置 New Relic,请执行以下操作:

  1. NewRelic.com 上创建一个 NewRelic 帐户

  2. 从 NewRelic 下载 Java 代理。 它具有类似于 newrelic-java-x.x.x.zip 的文件名。

  3. 复制你的许可证密钥,稍后需要用它来配置代理。

  4. 通过 SSH 登录到应用服务实例,并创建新目录 /home/site/wwwroot/apm。

  5. 将解压缩的 NewRelic Java 代理文件上传到 /home/site/wwwroot/apm 下的一个目录中。 代理的文件应位于 /home/site/wwwroot/apm/newrelic 中。

  6. 修改位于 /home/site/wwwroot/apm/newrelic/newrelic.yml 处的 YAML 文件,并将占位符许可证值替换为你自己的许可证密钥。

  7. 在 Azure 门户中,浏览到你在应用服务中的应用程序并创建一个新的应用程序设置。

    创建一个名为 JAVA_OPTS 且值为 -javaagent:/home/site/wwwroot/apm/newrelic/newrelic.jar 的环境变量。

    创建一个名为 CATALINA_OPTS 且值为 -javaagent:/home/site/wwwroot/apm/newrelic/newrelic.jar 的环境变量。

注意

如果你已有 CATALINA_OPTS 的环境变量,请将 -javaagent:/... 选项追加到当前值的末尾。

配置 AppDynamics

配置 AppDynamics:

  1. AppDynamics.com 上创建一个 AppDynamics 帐户

  2. 从 AppDynamics 网站下载 Java 代理。 文件名类似于 AppServerAgent-x.x.x.xxxxx.zip

  3. 通过 SSH 登录到应用服务实例,并创建新目录 /home/site/wwwroot/apm。

  4. 将 Java 代理文件上传到 /home/site/wwwroot/apm 下的一个目录中。 代理的文件应位于 /home/site/wwwroot/apm/appdynamics 中。

  5. 在 Azure 门户中,浏览到你在应用服务中的应用程序并创建一个新的应用程序设置。

    创建一个名为 JAVA_OPTS 且值为 -javaagent:/home/site/wwwroot/apm/appdynamics/javaagent.jar -Dappdynamics.agent.applicationName=<app-name> 的环境变量,其中,<app-name> 是你的应用服务名称。 如果你已有 JAVA_OPTS 的环境变量,请将 -javaagent:/... 选项追加到当前值的末尾。

    创建一个名为 CATALINA_OPTS 且值为 -javaagent:/home/site/wwwroot/apm/appdynamics/javaagent.jar -Dappdynamics.agent.applicationName=<app-name> 的环境变量,其中,<app-name> 是你的应用服务名称。 如果你已有 CATALINA_OPTS 的环境变量,请将 -javaagent:/... 选项追加到当前值的末尾。

配置 Datadog

配置选项因你的组织使用的 Datadog 站点而异。 请参阅官方的适用于 Azure 的 Datadog 集成文档

配置 Dynatrace

Dynatrace 提供了一个 Azure 原生 Dynatrace 服务。 若要使用 Dynatrace 监视 Azure 应用服务,请参阅官方的适用于 Azure 的 Dynatrace 文档

请访问面向 Java 开发人员的 Azure 中心查找 Azure 快速入门、教程和 Java 参考文档。