prometheus JVM監控
為了使用Prometheus監控JVM,你需要一個能夠採集JVM指標的工具,比如jmx_exporter。以下是如何設定jmx_exporter以監控JVM的步驟: 下載並執行jmx_exporter: bash wget "https://repo1.maven.org/maven2/io/prometheus/jmx/jmx_prometheus_javaagent/0.16.1/jmx_prometheus_javaagent-0.16.1.jar" java -javaagent:./jmx_prometheus_javaagent-0.16.1.jar=8080:config.yaml -jar your-application.jar 這裡8080是jmx_exporter監聽的埠,而config.yaml是配置檔案,你需要根據你的JVM版本和監控需求編寫這個檔案。 編寫config.yaml以配置你想要的JMX指標。例子如下: yaml lowercaseOutputName: true rules: - pattern: 'Catalina<type=(\w+), name=(\w+)><>(\w+):' name: tomcat_$3_$2 labels: server: "$1" name: "$2" - pattern: 'java.lang<type=Memory><>(\w+):' name: java_lang_memory_$1 - pattern: 'java.lang<type=GarbageCollector, name=(\w+), error=(\w+)><>CollectionCount:' name: java_lang_garbagecollector_$1_collection_count labels: error: "$2" 配置Prometheus來抓取jmx_exporter的指標: 在Prometheus的配置檔案prometheus.yml中新增一個新的job配置: yaml scrape_configs: - job_name: 'jvm-application' static_configs: - targets: ['localhost:8080'] 這裡jvm-application是你給這個job起的名字,localhost:8080是jmx_exporter執行的地址和埠。 重啟Prometheus使配置生效。 現在,你的JVM應用程式的JVM指標應該可以在Prometheus中查詢和監控了。