a、监控指标
数据模型
这里简单介绍一下描述监控指标的数据结构,和Open-Falcon保持兼容,下面举例两条监控指标:
[
{
"metric": "disk.io.util",
"endpoint": "10.86.12.13",
"tags": "device=sda",
"value": 15.4,
"timestamp": 1554455574,
"step": 20
},
{
"metric": "api.latency",
"endpoint": "10.86.12.13",
"tags": "api=/api/v1/auth/login,srv=nightingale,mod=uic,idc=bj",
"value": 5.4,
"timestamp": 1554455574,
"step": 20
}
]
其中,metric是监控指标名称,endpoint是监控实体,tags是监控数据的属性标签,step为监控数据的上报周期,value是监控指标的当前值,timestamp是当前时间戳,单位是秒。
机器指标
collector部署到目标机器之后,默认会采集一些基础监控指标,常用指标列表如下:
指标名称 | 指标标签 | 简单解释 |
---|---|---|
CPU相关 :-) | ||
cpu.idle | CPU空闲率 | |
cpu.util | CPU使用率 | |
cpu.user | 用户态CPU时间占比 | |
cpu.sys | 内核态CPU时间占比 | |
cpu.irq | 硬中断CPU时间占比 | |
cpu.softirq | 软中断CPU时间占比 | |
cpu.steal | 等待处理其他虚拟核的时间占比 | |
cpu.iowait | 等待I/O的CPU时间占比 | |
cpu.loadavg.1 | 近1分钟平均负载 | |
cpu.loadavg.5 | 近5分钟平均负载 | |
cpu.loadavg.15 | 近15分钟平均负载 | |
内存相关 :-) | ||
mem.bytes.total | 内存总大小 | |
mem.bytes.free | 空闲内存大小 | |
mem.bytes.used | 已用内存大小 | |
mem.bytes.used.percent | 已用内存占比 | |
mem.swap.bytes.total | swap总大小 | |
mem.swap.bytes.free | 空闲swap大小 | |
mem.swap.bytes.used | 已用swap大小 | |
mem.swap.bytes.used.percent | 已用swap占比 | |
硬盘相关 :-) | ||
disk.bytes.total | mount | 某分区大小 |
disk.bytes.free | mount | 某分区余量大小 |
disk.bytes.used | mount | 某分区用量大小 |
disk.bytes.used.percent | mount | 某分区用量占比 |
disk.inodes.total | mount | 某分区inode总数量 |
disk.inodes.free | mount | 某分区空闲inode数量 |
disk.inodes.used | mount | 某分区已用inode数量 |
disk.inodes.used.percent | mount | 某分区已用inode占比 |
disk.cap.bytes.total | mount | 所有分区大小之和 |
disk.cap.bytes.free | mount | 所有分区空闲大小之和 |
disk.cap.bytes.used | mount | 所有分区用量大小之和 |
disk.cap.bytes.used.percent | mount | 所有分区总用量占比 |
disk.io.util | device | IO利用率 |
disk.io.svctm | device | 每次IO服务时间,单位毫秒 |
disk.io.await | device | 每次IO处理时间,单位毫秒 |
disk.io.avgrq_sz | device | 平均请求大小 |
disk.io.avgqu_sz | device | 平均队列长度 |
disk.io.read.request | device | 每秒读请求数量 |
disk.io.write.request | device | 每秒写请求数量 |
disk.io.read.bytes | device | 每秒读取字节数 |
disk.io.write.bytes | device | 每秒写入字节数 |
disk.rw.error | mount | 硬盘分区读写是否有错 |
网络相关 :-) | ||
net.in.bits | iface | 入向网络流量 |
net.out.bits | iface | 出向网络流量 |
net.in.dropped | iface | 入向丢包数 |
net.out.dropped | iface | 出向丢包数 |
net.in.pps | iface | 入向包量 |
net.out.pps | iface | 出向包量 |
net.in.errs | iface | 入向错误数 |
net.out.errs | iface | 出向错误数 |
net.in.percent | iface | 入向带宽占比 |
net.out.percent | iface | 出向带宽占比 |
net.bandwidth.mbits | iface | 网卡带宽 |
net.bandwidth.mbits.total | 机器所有网卡总带宽 | |
net.in.bits.total | 所有网卡入向总流量 | |
net.out.bits.total | 所有网卡出向总流量 | |
net.in.bits.total.percent | 所有网卡入向总流量占比 | |
net.out.bits.total.percent | 所有网卡出向总流量占比 | |
net.sockets.used | socket使用量 | |
net.sockets.tcp.inuse | 正在使用的tcp socket数量 | |
net.sockets.tcp.timewait | timewait的tcp socket数量 | |
系统相关 :-) | ||
sys.fs.files.max | 允许使用的最大句柄量 | |
sys.fs.files.free | 文件句柄剩余量 | |
sys.fs.files.used | 文件句柄使用量 | |
sys.fs.files.used.percent | 文件句柄使用占比 | |
sys.ps.process.total | 系统进程数 | |
sys.ps.entity.total | 系统调度单元总数 | |
sys.ntp.offset.ms | 系统时间偏移量,单位毫秒 | |
sys.net.netfilter.nf_conntrack_max | conntrack最大值 | |
sys.net.netfilter.nf_conntrack_count | conntrack用量 | |
sys.net.netfilter.nf_conntrack_count.percent | conntrack用量占比 |