java性能监控工具glowroot部署与使用
glowroot部署与使用1、通过docker-compose部署services: #数据库 cassandra: image: cassandra:4.1.5 container_name: glowroot-cassandra ports: - 9042:9042 volumes: #路径自行更改 - /home/glowroot/cassandra_data:/var/lib/cassandra environment: #该设置为集群设置可加可不加 - CASSANDRA_CLUSTER_NAMEGlowrootCluster networks: - glowroot_net restart: unless-stopped glowroot-central: image: glowroot/glowroot-central:0.14.7 container_name: glowroot-central ports: - 4000:4000 #web界面 - 8181:8181 #采集端指向地址端口 environment: #指定数据库地址 - CASSANDRA_CONTACT_POINTScassandra depends_on: - cassandra networks: - glowroot_net restart: unless-stopped networks: glowroot_net: driver: bridge2、agent包准备https://github.com/glowroot/glowroot/releases/download/v0.14.7/glowroot-0.14.7-dist.zip3、启动docker容器docker-compose up -d -f 该docker-compose.yml路径4、设置账号密码docker exec -it glowroot-central java -jar glowroot-central.jar setup-admin-user (你的账号) 你的密码只有设置后才能访问web端地址是http://ip:4000使用账号密码进行登录此时没有agent端是不会有任何数据的5、部署agent端将glowroot-0.14.7-dist.zip包放到java服务中并解压unzip glowroot-0.14.7-dist.zip我这里是用docker跑的java后端示例storage-process: image: openjdk:8-jdk-alpine container_name: storage-process restart: always ports: - 8080:8080 environment: #以环境变量形式注入程序 JAVA_TOOL_OPTIONS: -javaagent:/app/glowroot/glowroot.jar -Dglowroot.agent.id推送服务端的标签名称可自行设置 -Dglowroot.collector.addresshttp://服务端ip:服务端端口 volumes: - /home/storage-process/:/app - /etc/localtime:/etc/localtime:ro command: - java - -Xms4g - -Xmx4g - -jar - storage-process.jar将agent包挂载到容器内并在环境变量中加入以下配置即可JAVA_TOOL_OPTIONS: -javaagent:/app/glowroot/glowroot.jar -Dglowroot.agent.id推送服务端的标签名称可自行设置 -Dglowroot.collector.addresshttp://服务端ip:服务端端口启动成功后可查询日志看是否成功docker logs storage-process | grep -i glowroot出现该日志则启动成功成功后可在服务端的web界面上查看该后端的信息内容比如查看jvm的线程情况在select中选择对应服务的标签如果堆内存有报错也可以在error中查看这里没有就不展示了