一个简单的demo,包含了http 请求以及sql 操作
spring boot java 应用
代码很简单,推荐查看github glowroot-spring-boot-demo
运行
这个比较核心,主要是基于docker 运行
- Dockerfile
FROM openjdk:11.0.14.1-slim-buster
COPY lib/ /opt/lib/
COPY admin.json /opt/admin.json
COPY glowroot.jar /opt/glowroot.jar
COPY target/metricsdemo-0.0.1-SNAPSHOT.jar /opt/metricsdemo-0.0.1-SNAPSHOT.jar
EXPOSE 4000 8080
ENTRYPOINT ["java","-jar","-javaagent:/opt/glowroot.jar","/opt/metricsdemo-0.0.1-SNAPSHOT.jar"]
admin.json (glowroot 配置,方便直接外部访问)
{
"web": {
"bindAddress": "0.0.0.0"
}
}
- docker-compose
version: "3"
services:
mysql:
image: mysql:5.6
volumes:
- "./init.d/:/docker-entrypoint-initdb.d"
environment:
- "MYSQL_ROOT_PASSWORD=dalong"
ports:
- "3306:3306"
app:
build: ./
ports:
- "4000:4000"
- "8080:8080"
init sql 主要是初始化数据的)
create database demoapp;
use demoapp;
CREATE TABLE `apps` (
`id` varchar(100) DEFAULT NULL
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4;
INSERT INTO demoapp.apps (id) VALUES('111');
INSERT INTO demoapp.apps (id) VALUES('333');
效果
可以通过访问http://localhost:8080/demo 以及http://localhost:8080/apicall
- sql 查询效果
- 服务访问
- 火焰图
说明
以上是一个简单的试用,实际上glowroot还是比较强大的,支持的特性也不少,值得使用
参考资料
https://github.com/glowroot/glowroot/wiki/Central-Collector-Installation
https://glowroot.org/features.html
https://hub.docker.com/_/mysql
https://github.com/rongfengliang/glowroot-spring-boot-demo
https://github.com/glowroot/glowroot/wiki/Agent-Installation-%28with-Embedded-Collector%29