Prometheus监控Tongweb容器

概述

JMX Exporter主要是利用JavaJMX机制来读取JVM运行时的一些数据,然后转化为Prometheus可读取的metrics格式的数据。
JMX Exporter有两种用法:

  1. 启动独立进程。通过RMI读取JVM数据,但是单独进程监控也存在问题。
  2. JVM进程内启动(agent)。JVM启动时指定参数,以javaagent形式运行。

官方也推荐是使用进程内启动形式,本文采用进程内启动形式。

TongWeb配置

  1. 上传jmx_prometheus_javaagent-0.19.0.jar到tongweb安装目录下bin目录,编写config.yaml文件
wercaseOutputLabelNames: true
lowercaseOutputName: true
whitelistObjectNames: ["java.lang:type=OperatingSystem", "TONGWEB:*","config:*"]
blacklistObjectNames: []
rules:
  - pattern: ".*"
.
├── boot.sh
├── commandstool.sh
├── config.yaml                         # 配置文件
├── domain.sh
├── external.vmoptions
├── external.vmoptions.template
├── forcestopserver.sh
├── installservice.sh
├── jmx_prometheus_javaagent-0.17.0.jar  # jmx_agent
├── password.sh
├── startdomain.sh
├── startserverbg.sh
├── startservernohup.sh
├── startserver-nohup-with-check.sh
├── startserver.sh
├── stopdomain.sh
├── stopserver.sh
├── thread-profiler.sh
└── version.sh
  1. TongWeb安装目录/bin目录下,修改external.vmoptions文件,在#jvm_options 后添加javaagent参数
# 说明 39081为端口号 jar都使用绝对路径。
-javaagent:"/data/tongweb/TongWeb7.0.4.9_Enterprise_Linux/bin/jmx_prometheus_javaagent-0.17.0.jar=39081:/data/tongweb/TongWeb7.0.4.9_Enterprise_Linux/bin/config.yaml"

Prometheus监控Tongweb容器_第1张图片

  1. 重启TongWeb服务,启动成功后访问http://127.0.0.1:39081/metrics,验证是否采集到监控数据

Prometheus监控Tongweb容器_第2张图片

Prometheus配置

Prometheus中配置target即可。如果有其他服务发现,就不需要如下配置。

  - job_name: tongweb
    static_configs:
      - targets: ['10.9.31.21:39081']
        labels:
          instance: 10.9.31.21

面板展示

https://grafana.com/grafana/dashboards/19156
Prometheus监控Tongweb容器_第3张图片

参考资料

  1. https://github.com/prometheus/jmx_exporter
  2. https://help.yunsuo.qianxin.com/guide/rasp/TongWeb.html

你可能感兴趣的:(prometheus,prometheus)