霍格沃兹测试开发学社性能训练营毕设之监控系统搭建参考

prometheus监控

docker run -d --name "litemall_prometheus" \
    -p 9090:9090 \
    -v ~/prometheus/conf:/etc/prometheus \
    prom/prometheus

grafana

docker run -d --name=grafana -p 3000:3000 grafana/grafana-enterprise:8.3.0-ubuntu

exporter参考

mysql exporter

docker run -d --name litemall_mysql_exporter \
  -p 9104:9104 \
  -e DATA_SOURCE_NAME="root:litemall123456@(litemall.hogwarts.ceshiren.com:13306)/" \
  prom/mysqld-exporter

node exporter

docker run -d --name litemall_node_exporter \
  --net="host" \
  --pid="host" \
  -v "/:/host:ro,rslave" \
  quay.io/prometheus/node-exporter:latest \
  --path.rootfs=/hostbash

通用的push gateway

docker run -d --name litemall_push_gateway -p 9091:9091 prom/pushgateway

jvm exporter 监控配置的变更参考

diff --git a/docker/docker-compose.yml b/docker/docker-compose.yml
index cb707c4..ad1fb54 100644
--- a/docker/docker-compose.yml
+++ b/docker/docker-compose.yml
@@ -4,7 +4,7 @@ services:
     image: mysql:5.7
     container_name: mysql
     ports:
-      - "3306:3306"
+      - "13306:3306"
     command:
       --character-set-server=utf8
       --collation-server=utf8_general_ci
@@ -22,7 +22,8 @@ services:
       dockerfile: Dockerfile
     container_name: litemall
     ports:
-      - "8080:8080"
+      - "18080:8080"
+      - "18081:8081"
     volumes:
       - ./litemall/storage:/storage
       - ./litemall/logs:/logs
@@ -32,4 +33,4 @@ services:
       - TZ=Asia/Shanghai
     depends_on:
       - mysql57
-    restart: always
\ No newline at end of file
+    restart: always
diff --git a/docker/litemall/Dockerfile b/docker/litemall/Dockerfile
index a882824..8ba9540 100644
--- a/docker/litemall/Dockerfile
+++ b/docker/litemall/Dockerfile
@@ -1,4 +1,6 @@
 FROM openjdk:8-jre
 COPY application.yml application.yml
+COPY config.yaml config.yaml
 COPY litemall.jar litemall.jar
-ENTRYPOINT ["java","-Djava.security.egd=file:/dev/./urandom","-jar","litemall.jar"]
\ No newline at end of file
+COPY jmx_prometheus_javaagent-0.16.1.jar jmx_prometheus_javaagent-0.16.1.jar
+ENTRYPOINT ["java","-Djava.security.egd=file:/dev/./urandom","-javaagent:./jmx_prometheus_javaagent-0.16.1.jar=8081:config.yaml","-jar","litemall.jar"]