下载
下载 jmx_exporter:https://github.com/prometheus/jmx_exporter
配置jmx_exporter
vim /usr/local/jmx_exporter/simple-config.yml
--- lowercaseOutputLabelNames: true lowercaseOutputName: true whitelistObjectNames: ["java.lang:type=OperatingSystem"] rules: - pattern: 'java.lang<type=OperatingSystem><>((?!process_cpu_time)\w+):' name: os_$1 type: GAUGE attrNameSnakeCase: true
|
在应用程序启动命令中添加配置
-javaagent:/usr/local/jmx_exporter/jmx_prometheus_javaagent-0.12.0.jar=3010:/usr/local/jmx_exporter/simple-config.yml
|
配置prometheus
- job_name: 'java' scrape_interval: 30s static_configs: - targets: ['192.168.1.110:3010']
|
导入grafana模板
导入模板id:8563
配置rules告警规则
groups: - name: jmx_rules rules: - alert: JvmMemoryFillingUp expr: (sum by (instance)(jvm_memory_bytes_used{area="heap"}) / sum by (instance)(jvm_memory_bytes_max{area="heap"})) * 100 > 80 for: 2m labels: severity: warning annotations: summary: JVM memory filling up (instance {{ $labels.instance }}) description: "JVM memory is filling up (> 80%)\n VALUE = {{ $value }}\n LABELS = {{ $labels }}"
|