APM-server部署配置
参考:
https://www.elastic.co/guide/en/apm/server/7.2/installing.html
https://www.elastic.co/guide/en/apm/index.html
安装
yum install -y apm-server
service apm-server start #启动
apm-server配置文件(apm-server.yml)内容有很多,具体使用根据需要看官方文档配置,下面是主要的配置,绑定host和端口,发送到elasticsearch集群。
apm-server:
host: "172.16.15.53:8200"
rum:
enabled: true
output.elasticsearch:
hosts: ["172.16.15.53:9200","172.16.15.48:9200"]
username: "elastic"
password: "RRCOfh9UudUIVZ4i954E"
APM-agent
参考:https://www.elastic.co/guide/en/apm/agent/index.html
server配置好,就需要在客户端配置了,根据官方文档可以看到支持如下:
在kibana中apm中也可以看到支持的类型。有部分是有侵入的需要在代码中配置。Java支持非侵入式的javaagent模式配置。这里需要下载jar包。
Tomcat无侵入
在tomcat中使用方式在/home/app/tomcat/bin/ catalina.sh:
JAVA_OPTS="-javaagent:${CATALINA_HOME}/lib/elastic-apm-agent-1.7.0.jar \ #注意jar包放置的位置,特别注意如果使用CATALINA_HOME,需要在定义后加入。
-Delastic.apm.service_name=test-apm \#监控的名字根据需要填写,修改后会出现新的监控名字
-Delastic.apm.server_url=http://172.16.15.53:8200 \ #server-apm地址
-Delastic.apm.application_packages=org.example,org.another.example"
如果是其他java程序(参考):
java -javaagent:/path/to/elastic-apm-agent-<version>.jar \
-Delastic.apm.service_name=my-application \
-Delastic.apm.server_url=http://localhost:8200 \
-Delastic.apm.secret_token= \
-Delastic.apm.application_packages=org.example \
-jar my-application.jar
测试tomcat监控如下所示,可以看到各个模块消耗的时间和错误,以及指标