基于以下假设,可根据自己要监控的APP修改ApplicationName等信息,
- 原app的路径是$APP_PATH;
- APMagent的编译后文件在$APM_AGENT_PATH;
步骤:
1.从$APM_AGENT_PATH
拷贝’APM-bootstrap-1.5.2-SNAPSHOT.jar到$APP_PATH;
$APM_AGENT_PATH
2.从拷贝boot文件夹到
$APP_PATH;
$APM_AGENT_PATH
3.从拷贝plugin文件夹到
$APP_PATH;
-javaagent:$APP_PATH/APM-bootstrap-1.5.2-SNAPSHOT.jar -D APM.agentId=agentId -D APM.applicationName=appName;
4.在app的启动脚本或者命令行中添加:
$APM_AGENT_PATH/APM.config;
5.如果只有以上参数,那么APMagent启动时读取的:
- APM.config文件的位置在
$APM_AGENT_PATH/log/`;
- APM日志的位置在
6.如果需要自行知道APM.config和log的位置,可以:
- 使用参数 -DAPM.config=$APM_AGENT_PATH/APM.config.moss
来指定配置文件的位置;
- 使用参数 -DAPM.log=$APM_AGENT_PATH/log/
来指定日志的位置;
例:
假设:
- 原application的启动shell脚本中设置了$jvm_opts变量,并用参数
java $jvm_opts -classpath "$CLASSPATH" abc.xyz.Main
启动: - APMagent的目录在/home/APM-agent-1.5.2
- 随该application启动的APMagent的agent id设置为EMS_minosmain;
- 随该application启动的APMagent给该application设置的application name为EMS_minos;
- 随该application启动的APMagent的配置文件使用/home/APM-agent-1.5.2/APM.config.minos;
- 随该application启动的APMagent产生的日志文件要保存在/home/APM-agent-1.5.2/log/目录下;
那么给这个application添加APMagent的shell命令为:
APM_AGENT_PATH="/home/APM-agent-1.5.2"
APM_AGENT_OPTS="-javaagent:$APM_AGENT_PATH/APM-bootstrap-1.5.2-SNAPSHOT.jar"
APM_AGENT_OPTS="$APM_AGENT_OPTS -DAPM.agentId=EMS_moss_ivm"
APM_AGENT_OPTS="$APM_AGENT_OPTS -DAPM.applicationName=EMS_moss"
APM_AGENT_OPTS="$APM_AGENT_OPTS -DAPM.config=$APM_AGENT_PATH/APM.config.moss"
APM_AGENT_OPTS="$APM_AGENT_OPTS -DAPM.log=$APM_AGENT_PATH/log/"
jvm_opts="$jvm_opts $APM_AGENT_OPTS"