全部产品
阿里云办公

接入 Java 应用

更新时间:2019-01-31 17:18:05

Java 应用接入 ARMS 应用监控,可采用普通接入方式和一键接入方式。本文介绍了如何使用普通方式将 Java 应用接入 ARMS 应用监控。一键接入方式请参考一键接入 Java 应用

将 Java 应用接入 ARMS 应用监控需要以下三个步骤:

  1. 步骤一:获取 licenseKey
  2. 步骤二:配置环境
  3. 步骤三:接入 Java 探针

前提条件

  • Agent 部署环境需要保证 TCP 协议在 8442、8443、8883 端口的权限畅通。ECS 环境下部署 Agent 需要开放这三个端口的 TCP 公网入方向权限,详细步骤如下。

    1. 在 ARMS 控制台左侧导航栏中选择自定义监控-数据源管理 > 云服务器 ECS 。 在云服务器 ECS 页面上找到您的 ECS,并单击 ECS 实例名称跳转到 ECS 控制台。

    2. 在 ECS 控制台左侧导航栏中选择网络和安全 > 安全组 。在安全组列表页面单击配置规则

    3. 经典网络环境下,配置公网入方向和公网出方向。专用网络环境下,配置入方向和出方向。入方向加入 8442、8443、8883 端口的 TCP 协议权限。出方向默认设置为端口全部打开。

  • 确保您使用的第三方组件或框架在应用监控兼容性列表范围内。

步骤一:获取 licenseKey

每个账号对应一个 licenseKey,您需要到控制台获取。操作步骤如下:

  1. 登陆 ARMS 控制台,在左侧导航栏中选择应用监控 > 应用列表

  2. 应用列表页面右上角单击新接入应用

  3. 新应用接入页面选择安装的语言包区域选择 Java 语言,并单击下一步

  4. 安装探针页面查看 licenseKey。

步骤二:配置环境

在接入 Java 探针之前,需要先配置应用运行的环境。请选择您的运行环境进行配置。

注意:执行命令前,请将 xxx 分别替换成您的 licenseKey 和应用名称,应用名暂不支持中文。

  • Tomcat 运行环境配置

    在 {TOMCAT_HOME}/bin 目录下的 setenv.sh 中加入以下配置。

    注意: 如果您的 Tomcat 版本没有 setenv.sh 配置文件,请打开 {TOMCAT_HOME}/bin/catalina.sh,找到 JAVA_OPTS 变量定义,并在该变量定义后加入以下配置。

    点击下载参考样例:catalina.sh(第 256 行定义)

    1. JAVA_OPTS="$JAVA_OPTS -javaagent:/{user.workspace}/ArmsAgent/arms-bootstrap-1.7.0-SNAPSHOT.jar -Darms.licenseKey=xxx -Darms.appName=xxx"

    注意:在 Windows 环境下,请在 {TOMCAT_HOME}/bin/catalina.bat 中加入:

    1. set "JAVA_OPTS=%JAVA_OPTS% -javaagent:{user.workspace}ArmsAgentarms-bootstrap-1.7.0-SNAPSHOT.jar -Darms.licenseKey=xxx -Darms.appName=xxx"
  • Jetty 运行环境配置

    在 {JETTY_HOME}/start.ini 配置文件中加入以下配置:

    1. --exec #打开注释 前面的井号去掉即可
    2. -javaagent:/{user.workspace}/ArmsAgent/arms-bootstrap-1.7.0-SNAPSHOT.jar
    3. -Darms.licenseKey=xxx
    4. -Darms.appName=xxx
  • Spring Boot 运行环境配置

    启动 Spring Boot 进程时,在启动命令 java 后面加上 -javaagent 参数:

    1. java -javaagent:/{user.workspace}/ArmsAgent/arms-bootstrap-1.7.0-SNAPSHOT.jar -Darms.licenseKey=xxx -Darms.appName=xxx -jar demoApp.jar

    注意: demoApp.jar 为原应用 JAR 包名称,请根据实际情况替换。

  • Resin 运行环境配置

    1. 启动 Resin 进程时,需要在 conf/resion.xml 配置文件中添加以下标签:

      1. <server-default>
      2. <jvm-arg>-javaagent:{user.workspace}/ArmsAgent/arms-bootstrap-1.7.0-SNAPSHOT.jar</jvm-arg>
      3. <jvm-arg>-Darms.licenseKey=xxx</jvm-arg>
      4. <jvm-arg>-Darms.appName=xxx</jvm-xxxarg>
      5. </server-default>
    2. 在 conf/app-default.xml 中添加以下标签:

      1. <library-loader path="{user.workspace}/ArmsAgent/plugin"/>
  • Windows 运行环境配置

    在 Windows 环境下启动 Java 进程时,请在挂载 Agent 路径中使用反斜杠作为分隔符。

    1. {CMD}> java -javaagent:{user.workspace}ArmsAgentarms-bootstrap-1.7.0-SNAPSHOT.jar -Darms.licenseKey=XXX -Darms.appName=XXX
    2. -jar {user.workspace}demoApp.jar

    注意: demoApp.jar 为原应用 JAR 包名称,请根据实际情况替换。

  • 同一台机器上面,部署同一应用的多个实例场景,可以通过 -Darms.agentId(逻辑编号:如001,002)参数来区分接入的 JVM 进程,例如:

    1. java -javaagent:/{user.workspace}/ArmsAgent/arms-bootstrap-1.7.0-SNAPSHOT.jar -Darms.licenseKey=xxx -Darms.appName=xxx
    2. -Darms.agentId=001 -jar demoApp.jar

步骤三:接入 Java 探针

  1. 返回 ARMS 控制台新应用接入页面。

  2. 采用以下方法之一下载 Java 探针,完成后单击下一步

    • 方法一:手动下载。单击下载探针按钮,下载最新 ZIP 包。

    • 方法2:wget 命令下载。使用 wget 命令下载 Agent 压缩包。(请根据地域下载对应的压缩包。)

    1. # 杭州地域
    2. wget "http://arms-apm-hangzhou.oss-cn-hangzhou.aliyuncs.com/ArmsAgent.zip" -O ArmsAgent.zip
    3. # 上海地域
    4. wget "http://arms-apm-shanghai.oss-cn-shanghai.aliyuncs.com/ArmsAgent.zip" -O ArmsAgent.zip
    5. # 青岛地域
    6. wget "http://arms-apm-qingdao.oss-cn-qingdao.aliyuncs.com/ArmsAgent.zip" -O ArmsAgent.zip
    7. # 北京地域
    8. wget "http://arms-apm-beijing.oss-cn-beijing.aliyuncs.com/ArmsAgent.zip" -O ArmsAgent.zip
    9. # 深圳地域
    10. wget "http://arms-apm-shenzhen.oss-cn-shenzhen.aliyuncs.com/ArmsAgent.zip" -O ArmsAgent.zip
    11. # 新加坡地域
    12. wget "http://arms-apm-ap-southeast.oss-ap-southeast-1.aliyuncs.com/cloud_ap-southeast-1/ArmsAgent.zip" -O ArmsAgent.zip
    13. # 金融云环境
    14. wget "http://arms-apm-hangzhou.oss-cn-hangzhou.aliyuncs.com/finance/ArmsAgent.zip" -O ArmsAgent.zip
  3. 解压探针包。切换到安装包所在目录,解压安装包到任意工作目录下。

    1. unzip ArmsAgent.zip -d /{user.workspace}/

    注意: {user.workspace} 是示例路径,请根据自身不同的环境修改正确的目录。

  4. 采用以下方法之一添加 appName 以及 licenseKey 参数,完成后单击下一步

    • 方法一:修改 JVM 参数,在应用服务器的启动脚本中添加以下参数。

      注意:xxx 分别替换成您的 licenseKey 和应用名称,应用名暂不支持中文。

      1. -javaagent:/{user.workspace}/ArmsAgent/arms-bootstrap-1.7.0-SNAPSHOT.jar
      2. -Darms.licenseKey=xxx
      3. -Darms.appName=xxx
    • 方法二:

      1. 修改 arms-agent.config,替换 arms.licenseKey 及 arms.appName 配置定义:

        注意:xxx 分别替换成您的 licenseKey 和应用名称,应用名暂不支持中文。

        1. arms.licenseKey=xxx
        2. arms.appName=xxx
      2. 修改 JVM 参数,在应用服务器的启动脚本中添加以下参数。

        1. -javaagent:/{user.workspace}/ArmsAgent/arms-bootstrap-1.7.0-SNAPSHOT.jar
  5. 重启您的 Java 应用。

    约一分钟后,若您的应用出现在应用列表中且有数据上报,则说明接入成功。

卸载 Java 探针

当您不需要 ARMS 探针采集数据时,可按照以下步骤卸载探针。

  1. 删除步骤三中第 4 步添加的参数。
  2. 重启您的 Java 应用。

相关文档