一、内置key说明:
Zabbix内置了很多丰富的key,使得咱们再添加linux os模板的时候,已经帮我们把key给定义好,这样我们就能够直接链接模板就可以使用了。
我们这边的话列举一些内置key,然后进行一些简单的说明:当我们内置key可以采集到数据的时候我们最好是不用去写自定义key再去采集的:(我见过一篇51
CTO的写监控用户登录数,还用w去监控,没有直接取调用内置key):
二、详情可以查看官方文档:
三、内置监控项key列表:
agent.hostname
返回被监控端名称(字符串)
使用方式列举:后面使用的方式是一样的:
[root@BJ-monitor-h-01 bin]# ./zabbix_get -s192.168.10.100 -k agent.hostname
Zabbix server
agent.ping
检测被监控端是否存活(1:运行中 其他:未运行)-使用函数nodata()检测客户端是否正在运行
agent.version
zabbix agent版本字符串
kernel.maxfiles
系统支持最大的open files整数
kernel.maxproc
系统支持最大的进程数量整数
log[file,,,,,]
监控日志文件
file -文件详细路径
regexp -正则
encoding -编码
maxlines - zabbix agent向server或者proxy发送最大的行数。
这个参数覆盖配置文件zabbxi_agentd.conf中的’MaxLinesPerSecond’
mode -可选值:all (默认), skip (跳过处理老数据).mode参数从2.0版本开始支持
output -可选项,输出格式模板.
示例: log[/var/log/syslog] log[/var/log/syslog,error]log[/home/zabbix/logs/logfile,,,100]
logrt[file_pattern,,,,,]
Monitoring of log file withlog rotation support.
file_pattern -文件绝对路径
net.if.discovery
列出网卡.通常用于低级别的discovery.JSON对象
net.if.in[if,]
网卡入口流量整数.
if -网卡名称
mode -可用值: bytes -字节数(默认)
packets -包数量
errors -错误数量
dropped -丢包数量
示例keys: net.if.in[eth0,errors] net.if.in[eth0]
net.if.out[if,]
网卡出口流量(参数参见net.if.in)
net.if.total[if,]
网卡进/出流量的总和(参数参见net.if.in)
net.tcp.listen[port]
检测端口是否开启0–(not listen)1–in LISTEN stateport
示例:net.tcp.listen[80]
net.tcp.port[,port]
是否可以连接到指定的TCP端口0–cannot
connect 1–can connect
ip - IP地址(默认是127.0.0.1)
port -端口
范例: net.tcp.port[,80]检测web服务器端口是否运行中
net.tcp.service[service,,]
检测服务是否开启,并且端口可用0– 服务挂了1– 服务运行中
service -如下:ssh, ntp,ldap, smtp, ftp, http, pop, nntp,imap, tcp, https, telnet
ip - IP地址(默认127.0.0.1)
port -端口(默认情况为标准端口号)
示例key: net.tcp.service[ftp,,45]
net.tcp.service.perf[service,,]
检测服务器性能0– 服务挂了; seconds– 链接到服务器端口消耗的时间
service -如下:ssh, ntp,ldap, smtp, ftp, http, pop, nntp,imap, tcp, https, telnet
ip - IP地址(默认127.0.0.1)
port -端口(默认情况为标准端口号)
示例key:net.tcp.service.perf[ssh]
proc.mem[,,,]
用户进程消耗的内存内存使用量(字节单位).
name -进程名(默认值“all processes”)
user -用户名(默认值“all users”)
mode -可选值: avg, max,
min, sum (默认)
cmdline -命令行过滤(正则表达时)
示例keys: proc.mem[,root]–root的进程消耗了多少内存
proc.mem[zabbix_server,zabbix]–zabbix用户运行的zabbix_server使用了多少内存
proc.mem[,oracle,max,oracleZABBIX]
proc.num[,,,]
某用户某些状态的进程的数量进程数量
name -进程名称(默认“all processes”)
user -用户名(默认“all users”)
state -可用值: all (默认), run,sleep, zomb
cmdline -命令行过滤(正则表达时)
示例keys:
proc.num[,mysql]–MySQL用户运行的进程数量
proc.num[apache2,www-data]–www-data运行了多少个apache2进程
proc.num[,oracle,sleep,oracleZABBIX]
备注:Windows系统只支持name和user两个参数
system.boottime
系统启动的时间戳整数.unix时间戳
system.cpu.intr
设备中断整数
system.cpu.load[,]
CPU负载浮点数
cpu -可用值: all (默认), percpu (所有在线cpu的负载)
mode -可用值:avg1 (1分钟默认值), avg5(5分钟平均), avg15 (15分钟平均值)
范例key: system.cpu.load[,avg5]
system.cpu.num[]
CPU数量处理器个数type -可用值: online (默认值), max范例: system.cpu.num
system.cpu.switches
上下文交换交换次数老命名方式:system[switches]
system.cpu.util[,,]
CPU利用率百分比
cpu - cpu数量(默认是所有cpu)
type -可用值: idle,
nice, user (默认), system (windows系统默认值), iowait, interrupt,softirq,steal
mode -可用值: avg1 (一分钟平均,默认值), avg5(5分钟平均, avg15 (15分钟平均值)
范例key: system.cpu.util[0,user,avg5]
system.hostname[]
返回主机名字符串
type (仅用于windows系统)– 可用值: netbios(默认)or host
system.hw.cpu[,]
返回CPU信息字符/数字
cpu - cpu数量或者all (默认)
info - full (默认), curfreq,
maxfreq, model或者vendor
例如: system.hw.cpu[0,vendor]
AuthenticAMD从/proc/cpuinfo、/sys/devices/system/cpu/[cpunum]/cpufreq/cpuinfo_max_freq获取信息.如果指定了CPU数量和curfreq或者maxfreq,将会返回数值(Hz).
system.hw.devices[]
列出PCI或者USB文本值
type - pci (默认) or usb
范例:
system.hw.devices[pci] 00:00.0 Host bridge: Advanced Micro Devices [AMD] RS780
Host Bridge [..]返回lspci或者lsusb
(不带参数)
system.hw.macaddr[,]
列出MAC地址字符串
interface - all (默认)或者正则表达式
format - full (默认)、short
范例:
system.hw.macaddr["eth0$",full] [eth0] 00:11:22:33:44:55列出指定接口mac地址 如果format指定为short,MAC地址相同的将会被忽略掉
system.localtime[]
系统时间.数字或者字符串
system.run[command,]
在制定的主机上运行命令文本
command -命令
mode - wait (默认值,执行超时时间), nowait (不等待)最大可用返回512KB数据,包含空白数据。 命令输出数据必须是文本
例如:
system.run[“ls -l /”]– 列出/的文件和目录.
Note:启用这个方法, agent配置文件必须配置EnableRemoteCommands=1选项
system.sw.arch
返回软件信息字符串
范例:system.sw.arch
system.sw.os[]
返回系统信息字符串
info - full (default), short,name
范例:system.sw.os[short] Ubuntu 2.6.35-28.50-generic 2.6.35.11
信息来自如下文件:
/proc/version [short]
/proc/version_signature [name]
/etc/issue.net
system.sw.packages[,,]
已安装软件列表文本值
package - all (默认)或者正则表达式
manager - all (默认) or apackage manager
format - full (默认),short
范例:system.sw.packages[http]
system.swap.in[,]
交换分区IN(磁盘交换到内存)数字
device -交换分区设备(默认all)
type -可选值: count
(swapins数量), sectors(sectors swapped in), pages (pagesswapped in).
示例key:system.swap.in[,pages]
数据采集自: Linux2.4: /proc/swaps, /proc/partitions, /proc/stat
Linux 2.6: /proc/swaps, /proc/diskstats,/proc/vmstat
system.swap.out[,]
Swap out (f内存到磁盘) .数字
device - swap设备(默认all)
type - count (number of
swapouts), sectors(sectors swapped out), pages (pages swapped out).示
例key:system.swap.out[,pages]
数据采集自: Linux2.4: /proc/swaps, /proc/partitions, /proc/stat
Linux 2.6: /proc/swaps,/proc/diskstats, /proc/vmstat
system.swap.size[,]
交换分区大小字节或者百分比
device -交换分区(默认值all)
type - free (free swap space, default), pfree (free swap space,in percent), pused (used swap space, in percent), total (total swap space),used (used swap space)
示例system.swap.size[,pfree]– 空闲swap百分比
system.uname
返回主机相信信息.字符串
system.uptime
系统运行时长(秒)多少秒使用s/uptime来获取
system.users.num
登陆用户数量多少用户agent使用who命令获取
vfs.dev.read[,,]
磁盘读取状态整数,浮点数(如果type为如下)
device -磁盘设备(默认值“all”)
type -可选值:sectors,
operations, bytes, sps, ops, bps(必须指定,不同操作系统下不同).sps, ops, bps stand for:sectors, operations, bytes per second, respectively
mode -可选值: avg1,avg5, avg15.
备注:只有type为sps, ops, bps的时候,第三个参数才被支持。
不同操作系统的TYPE参数:FreeBSD–bps Linux–sps OpenBSD–operations Solaris–bytes
示例key:vfs.dev.read[,operations]
vfs.dev.write[,,]
磁盘写入状态整数,
device -磁盘设备(默认all)
type - sectors, operations,bytes, sps, ops, bps
mode - one of avg1(default),avg5 , avg15.
example:vfs.dev.write[,operations] Old naming: io
vfs.file.cksum[file]
计算文件校验UNIXcksum.
file -文件完整路径
vfs.file.contents[file,]
获取文本内容若为空,只返回LF/CR characters.
file -文件完整路径
例如:
vfs.file.contents[/etc/passwd]文件不可以超过64KB.
vfs.file.exists[file]
检测文件是否存在1–存在0– 不存在
file -文件完整路径
vfs.file.md5sum[file]
文件MD5校验码文件MD5哈希值
file -完整路径
vfs.file.regexp[file,regexp,,,,]
文件中搜索字符串包含字符串的行,或者为空
file -文件完整路径
regexp - GNU正则表达式
encoding -编码
start line -从哪一行开始,默认第一行
end line -从哪一行结束,默认最后一行
如:vfs.file.regexp[/etc/passwd,zabbix]
vfs.file.regexp[/path/to/some/file,”([0-9]+)$”,,3,5,\1]
vfs.file.regexp[/etc/passwd,^zabbix:.:([0-9]+),,,,\1]
vfs.file.regmatch[file,regexp,,,]
文件中搜索字符串0–未找到1– 找到
file -文件完整路径
regexp - GNU正则表达式
encoding -编码
start line -哪行开始,默认第一行
end line -哪行结束,默认最后一行
例如: vfs.file.regmatch[/var/log/app.log,error]
vfs.file.size[file]
文件大小字节fzabbix必须有可读此文件的权限
vfs.file.time[file,]
文件时间信息Unix时间戳.
mode -modify (默认,修改时间), access– 最后访问时间, change– 最后改变时间
例如:
vfs.file.time[/etc/passwd,modify]备注:文件大小有限制
vfs.fs.discovery
列出挂载的文件系统 用于lld.JSON对象
vfs.fs.inode[fs,]
inodes数量数字
fs -文件系统
mode - total (默认), free,
used, pfree (空闲百分比), pused (使用百分比)
例如:vfs.fs.inode[/,pfree]
vfs.fs.size[fs,]
磁盘空间,返回本地文件系统的使用量字节
fs -文件系统
mode -total (默认), free, used, pfree (空闲百分比), pused (使用百分比).
例如:vfs.fs.size[/tmp,free]
vm.memory.size[]
内存大小字节或百分比
mode - total (默认), active,anon, buffers, cached, exec, file, free, inactive, pinned, shared, wired, used,pused, available
监控项vm.memory.size[]允许三种类型的参数:
第一类:包含total -总内存
第二类: 系统指定内存类型:active, anon, buffers, cached,
exec, file, free, inactive,pinned, shared, wired.第三类:用户级别,一共使用了多少内存,还有多少内存可用: used, pused, available,pavailable.
web.page.get[host,,]
获取网页内容网页源代码
host -主机名/域名
path -文件地址,默认/
port -端口,默认80返回空字符串表示失败.例如: web.page.get[
web.page.perf[host,,]
获取完全加载网页消耗的时长秒,返回0表示失败
host -主机名/域名
path - html地址,默认是/
port -端口,默认80
[root@BJ-monitor-h-01 bin]#./zabbix_get -s 192.168.10.100 -k web.page.perf[www.baidu.com]
web.page.regexp[host,,,,,]
在网页中搜索字符串失败则返回空字符(不匹配).
host -主机名
path - html文件路径(默认值/)
port -端口(默认80)
regexp - GNU正则表达式
length -返回的最大的字符串数量
output -输出格式模板可选项.
9e�eƖ|'����#
本文参考龙果学院:http://www.roncoo.com/course/view/fb3050a5b34b42f39ccad83ebebc89c1
网友评论