Skip to content

Commit

Permalink
[monitor] feature: support apache kafka monitor (#263)
Browse files Browse the repository at this point in the history
  feat: [manager]feature: add Kafka Monitor #wqh

  feat: [manager、home]feature: code and help doc #wqh

  feat: [home]feature: tomcat help doc #wqh

  feat: [manager]feature: application.yml  #wqh
  • Loading branch information
wang1027-wqh authored and tomsun28 committed Aug 28, 2022
1 parent ea9817d commit 5a6a0bb
Show file tree
Hide file tree
Showing 5 changed files with 450 additions and 0 deletions.
94 changes: 94 additions & 0 deletions home/docs/help/kafka.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,94 @@
---
id: Kafka
title: 监控:Kafka监控
sidebar_label: Kafka监控
---

> 对Kafka的通用性能指标进行采集监控
使用协议:JMX

### 配置参数

| 参数名称 | 参数帮助描述 |
| ----------- | ----------- |
| 监控Host | 被监控的对端IPV4,IPV6或域名。注意⚠️不带协议头(eg: https://, http://)。 |
| 监控名称 | 标识此监控的名称,名称需要保证唯一性。 |
| 查询超时时间 | 设置Kafka连接的超时时间,单位ms毫秒,默认3000毫秒。 |
| 用户名 |Kafka所在Linux连接用户名 |
| 密码 | Kafka所在Linux连接密码 |
| 采集间隔 | 监控周期性采集数据间隔时间,单位秒,可设置的最小间隔为10秒 |
| 是否探测 | 新增监控前是否先探测检查监控可用性,探测成功才会继续新增修改操作 |
| 描述备注 | 更多标识和描述此监控的备注信息,用户可以在这里备注信息 |

### 采集指标


#### 指标集合:server_info

| 指标名称 | 指标单位 | 指标帮助描述 |
| ----------- | ----------- | ----------- |
| Version || Kafka版本 |
| StartTimeMs | ms | 运行时间 |
| CommitId || |


#### 指标集合:code_cache

| 指标名称 | 指标单位 | 指标帮助描述 |
| ----------- | ----------- | ----------- |
| committed | kb | 总量 |
| init | kb | 初始化大小 |
| max | kb | 最大 |
| used | kb | 已使用 |

#### 指标集合:broker_activecontroller_count

| 指标名称 | 指标单位 | 指标帮助描述 |
| ----------- | ----------- | ----------- |
| Value || 活跃监控器数量 |



#### 指标集合:broker_partition_count

| 指标名称 | 指标单位 | 指标帮助描述 |
| ----------- | ----------- | ----------- |
| Value || 分区数量 |

#### 指标集合:broker_leader_count

| 指标名称 | 指标单位 | 指标帮助描述 |
| ----------- | ----------- | ----------- |
| Value || 领导者数量 |


#### 指标集合:broker_handler_avg_percent 请求处理器空闲率

| 指标名称 | 指标单位 | 指标帮助描述 |
| ----------- | ----------- | ----------- |
| EventType || 类型 |
| RateUnit | 具体情况具体分析 | 单位 |
| Count || 数量 |
| OneMinuteRate | % | 一分钟处理率 |
| FiveMinuteRate | % | 五分钟处理率 |
| MeanRate || 平均处理率 |
| FifteenMinuteRate || 十五分钟处理率 |


>其他指标见文知意
>Kafka开启JMX协议步骤
1. 安装Kafka
2. 修改启动脚本
找到Kafka安装目录/bin/kafka-server-start.sh在 倒数第二行添加如下内容
```aidl
export JMX_PORT=9999;
export KAFKA_JMX_OPTS="-Djava.rmi.server.hostname=ip地址 -Dcom.sun.management.jmxremote.rmi.port=9999 -Dcom.sun.management.jmxremote -Dcom.sun.management.jmxremote.authenticate=false -Dcom.sun.management.jmxremote.ssl=false";
// 这是最后一行本来就存在的
exec $base_dir/kafka-run-class.sh $EXTRA_ARGS kafka.Kafka "$@"
```


71 changes: 71 additions & 0 deletions home/docs/help/tomcat.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,71 @@
---
id: Tomcat
title: 监控:Tomcat监控
sidebar_label: Tomcat监控
---

> 对Tomcat的通用性能指标进行采集监控
### 配置参数

| 参数名称 | 参数帮助描述 |
| ----------- | ----------- |
| 监控Host | 被监控的对端IPV4,IPV6或域名。注意⚠️不带协议头(eg: https://, http://)。 |
| 监控名称 | 标识此监控的名称,名称需要保证唯一性。 |
| 查询超时时间 | 设置Tomcat连接的超时时间,单位ms毫秒,默认3000毫秒。 |
| 用户名 | Tomcat所在Linux连接用户名 |
| 密码 | Tomcat所在Linux连接密码 |
| 采集间隔 | 监控周期性采集数据间隔时间,单位秒,可设置的最小间隔为10秒 |
| 是否探测 | 新增监控前是否先探测检查监控可用性,探测成功才会继续新增修改操作 |
| 描述备注 | 更多标识和描述此监控的备注信息,用户可以在这里备注信息 |

### 采集指标


#### 指标集合:memory_pool

| 指标名称 | 指标单位 | 指标帮助描述 |
| ----------- | ----------- | ----------- |
| name || 指标名称 |
| committed | kb | 总量 |
| init | kb | 初始化大小 |
| max | kb | 最大 |
| used | kb | 已使用 |

#### 指标集合:code_cache

| 指标名称 | 指标单位 | 指标帮助描述 |
| ----------- | ----------- | ----------- |
| committed | kb | 总量 |
| init | kb | 初始化大小 |
| max | kb | 最大 |
| used | kb | 已使用 |

#### 指标集合:class_loading

| 指标名称 | 指标单位 | 指标帮助描述 |
| ----------- | ----------- | ----------- |
| LoadedClassCount || 已加载类数量 |
| TotalLoadedClassCount || 历史已加载类总量 |
| UnloadedClassCount || 未加载类数量 |


#### 指标集合:thread

| 指标名称 | 指标单位 | 指标帮助描述 |
| ----------- | ----------- | ----------- |
| TotalStartedThreadCount || 已经开始的线程数量 |
| ThreadCount || 线程数 |
| PeakThreadCount || 未加载类数量 |
| DaemonThreadCount || 守护进程数 |
| CurrentThreadUserTime | ms | 使用时间 |
| CurrentThreadCpuTime | ms | 使用CPU时间 |

>Tomcat开启JMX协议步骤
1. 搭建好tomcat后,进入tomcat下的bin目录,修改catalina.sh文件
2. vim catalina.sh
```aidl
CATALINA_OPTS="$CATALINA_OPTS -Dcom.sun.management.jmxremote -Djava.rmi.server.hostname=10.1.1.52 -Dcom.sun.management.jmxremote.port=1099 -Dcom.sun.management.jmxremote.ssl=false -Dcom.sun.management.jmxremote.authenticate=false"
```
https://blog.csdn.net/weixin_41924764/article/details/108694239?ops_request_misc=%257B%2522request%255Fid%2522%253A%2522166159263316782246440176%2522%252C%2522scm%2522%253A%252220140713.130102334..%2522%257D&request_id=166159263316782246440176&biz_id=0&utm_medium=distribute.pc_search_result.none-task-blog-2~all~sobaiduend~default-3-108694239-null-null.142^v42^pc_rank_34_2,185^v2^control&utm_term=tomcat%E5%BC%80%E5%90%AFJMX&spm=1018.2226.3001.4187
Binary file added home/static/img/docs/help/img.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading

0 comments on commit 5a6a0bb

Please sign in to comment.