使用增强型Java探针监控应用指标
华为云应用性能管理服务(Application Performance Management,简称APM)帮助运维人员快速发现应用的性能瓶颈,以及故障根源的快速定位,为用户体验保驾护航。您无需修改代码,只需为应用安装一个APM Agent,就能够对该应用进行全方位监控,帮助您快速定位出错接口和慢接口、重现调用参数、发现系统瓶颈,从而大幅提升线上问题诊断的效率。
本文以增强型Java探针接入APM为例,帮助您快速上手使用应用性能管理服务。首先需要接入增强型Java探针;然后在APM界面查看探针接入是否成功。待增强型Java探针接入成功后,即可在APM控制台上查看性能监控指标。
操作流程
前提条件
- 使用APM 2.0前,需要先注册一个华为账号并进行实名认证。如果您已有一个华为账号,可直接跳过如下操作。
- 进入华为云官网,单击页面右上角的“注册”。
- 参考注册华为账号并开通华为云中操作,完成注册。
- 注册后参考实名认证完成个人或企业账号实名认证。
- 为账户充值。如果您的账户有足够金额,请跳到下一个任务。如果您的账户还没有足够金额,请先为账户充值。
- 为用户添加应用性能管理 APM的操作权限。
您需要有APM的管理员权限“APM FullAccess”,具体操作请参考授权IAM用户使用APM。
- 部署APM Agent时,必须确保接入APM的机器与APM服务网络连通,Agent才能正常工作。可使用“curl -kv”命令测试目标机器与APM服务器网络是否连通。例如,以检查华北-北京四区域,且接入方式选择“增强型探针”的连通性为例,请登录应用所部署的机器,并输入命令curl -kv 100.125.12.108:41333,其他区域地址请参考探针接入地址。
首次开通APM 2.0并授权
- 使用APM 2.0 前,需要先开通APM 2.0。如果您已开通APM 2.0,可直接跳过如下操作。
- 登录APM控制台。
首次登录APM控制台,您可以选择使用应用性能管理的“免费体验”或“开通企业版”。“免费体验”与“开通企业版”的差异参见产品规格差异。
图1 APM控制台首页
- 单击“免费体验”,进入免费体验应用性能管理页面。
图2 免费体验应用性能管理
- 阅读《APM应用性能管理服务声明》 、 《法律声明》以及《隐私政策声明》后,选择“□ 我已阅读 《APM应用性能管理服务声明》以及《法律声明及隐私权政策》”。
- 单击“立即体验 ”,弹出“请确认已阅读《华为APM应用性能管理服务声明》及《法律声明及隐私权政策》。”提示框。
- 单击“确定”,最多可以免费使用10个Agent。
- 登录APM控制台。
- 自动创建访问密钥。
APM 2.0通过AK/SK进行签名验证,通过授权的账户才能上报数据。
- 登录APM控制台。
- 单击左侧导航栏“系统管理 > 访问密钥”,进入访问密钥页面。
- 在访问密钥页面查看自动创建的访问密钥。
接入增强型Java探针
- 登录APM控制台。
- 单击左侧
,选择“管理与监管 > 应用性能管理 APM”,进入APM服务页面。 - 在左侧导航栏中选择“应用监控 > 应用列表”。
- 单击“接入应用”,进入接入应用页面。
- 选择“区域”和“应用”。单击“创建应用”,弹出“创建应用”弹窗,可以具体操作参见创建应用。
- “接入方式”选择增强型探针。
- “服务端语言”选择Java。
- 请到“系统管理 > 访问密钥”界面,获取JavaAgent所需的AK、SK。获取“访问密钥”的方法,请参见访问密钥。
- 使用PuTTY等远程登录工具,登录待安装Agent的Linux操作系统主机,并以root或service权限执行相关命令。执行安装命令的用户需要和启动应用的用户保持一致
- 执行如下命令,下载并安装JavaAgent。
curl -k https://javaagent.obs.****.com/apm_agent_install2.sh -o apm_agent_install.sh && bash apm_agent_install.sh -ak {APM_AK} -sk {APM_SK} -masteraddress APM探针的接入地址 -obsaddress https://javaagent.obs..****.com -version latest; history -cw; history -r启动命令示例。
curl -k https://javaagent.obs.cn-north-7.ulanqab.huawei.com/apm_agent_install2.sh -o apm_agent_install.sh && bash apm_agent_install.sh -ak 8fjsIX7QUY8RkeVc -sk 3OgSLPYOlp4R9rUVhMaFGkAhTwNsn6Em2Yciqc0s1NveijRfxSsiWO65VpjS7rvtF2v9ABHQIpzOvTUclHsRzh3iBdyHFUBmKXlzwhunjxS8cxNZrB3pwXDueIp4zvidpznWy5qCMcrCWRh3sGnDVr3RHqV1o4flkPsoUKM1hpddAUyoG8OUxi -masteraddress https:ion latest; history -cw; history -r
表1 虚机接入参数说明 参数
说明
是否必填
APM_AK
APM_SK
安装JavaAgent的AK和SK。获取APM_AK和APM_SK方法参见访问密钥。
如果直接复制命安装JavaAgent的命令,请注意填写“APM_AK”和“APM_SK”时,删除“{}”。
例如:
curl -k https://javaagent.***/apm_agent_install2.sh -o apm_agent_install.sh && bash apm_agent_install.sh -ak * -sk * -masteraddress https://**** -obsaddress https://javaagent.***.com -version latest; history -cw; history -r
必填
masteraddress
接入地址,请参见探针接入地址。
必填
version
Agent版本号。APM提供的latest探针版本,能同时支持多个jdk环境。
必填
探针安装路径
Agent探针安装的路径。
必填
组件名称
组件名称,代表一个组件,需要使用英文字符开头。同一个应用下,组件名称不能重复。一个组件可以包含多个环境。不能重复,如果要重复,使用instanceName区分。
必填
环境名称
环境名称,代表一个应用在一个地方的部署。一个应用程序根据配置不同可以部署多个环境,比如测试环境,现网环境。每个环境都在一个region部署,具有唯一的region属性。该参数可以为空,代表默认环境。
选填
环境标签
环境标签,主要用于环境过滤,多个环境打上相同的环境标签,在web页面上可以通过标签将这些环境过滤出来。该参数可以为空。
选填
应用名称
应用英文名称,为全局概念。如果填写,则必须提前创建该应用。如果为空,则代表默认应用(开通APM时系统会自动创建一个默认应用)。
选填
子应用名称
子应用,为全局概念,在应用下面子文件夹。该参数可以为空,为空代表资源挂载在根应用下面,子应用最多支持三层。比如 a/b/c,a、b、c各代表一层。
选填
用户应用
用户应用jar包名称。
必填
- 添加启动命令并重启应用。Agent安装大约需要1分钟。安装完毕后,在应用服务器的启动脚本中添加以下JVM参数,然后重新启动您的应用。启动命令格式如下。
java -javaagent:探针安装路径/apm-javaagent/apm-javaagent.jar=appName=组件名称,env=环境名称,envTag=环境标签,business=应用别名,subBusiness=子应用名称 -jar 用户应用.jar
启动命令示例。
java -javaagent:/root/apm-javaagent/apm-javaagent.jar=appName=test001,env=env001,envTag=tag001,business=LubanApm -Dserver.port=1024 -jar benchmark-1.jar
表2 启动命令参数说明 参数
说明
是否必填
探针安装路径
Agent探针安装的路径。
必填
组件名称
组件名称,代表一个组件,需要使用英文字符开头。同一个应用下,组件名称不能重复。一个组件可以包含多个环境。不能重复,如果要重复,使用instanceName区分。
必填
环境名称
环境名称,代表一个应用在一个地方的部署。一个应用程序根据配置不同可以部署多个环境,比如测试环境,现网环境。每个环境都在一个region部署,具有唯一的region属性。该参数可以为空,代表默认环境。
选填
环境标签
环境标签,主要用于环境过滤,多个环境打上相同的环境标签,在web页面上可以通过标签将这些环境过滤出来。该参数可以为空。
选填
应用英文名称
应用英文名称,为全局概念。如果填写,则必须提前创建该应用。如果为空,则代表默认应用(开通APM时系统会自动创建一个默认应用)。
选填
子应用
子应用,为全局概念,在应用下面子文件夹。该参数可以为空,为空代表资源挂载在根应用下面,子应用最多支持三层。比如 a/b/c,a、b、c各代表一层。
选填
用户应用
用户所属的应用名称。
必填
- 在左侧导航栏中选择“应用监控 > 应用列表”,在列表中找到组件名称为“test001”的组件,其“Agent 状态”为“正常”,增强型 Java探针接入成功。