zabbix agent 類型所有key

  zabbix服務器端通過與zabbix agent通信來獲取客戶端服務器的數據,agent分爲兩個版本,在配置主機我們可以看到一個是agent,另一個是agent(active)。

agent:zabbix server向zabbix agent討要數據。
agent(active):zabbix agent提交數據給zabbix server。


監控項keys列表

以下表格是zabbix agent所支持的所有key列表,添加一向監控的時候,首先想到的應該是zabbix agent是否已經有相關的key存在,而不是自己去寫腳本來獲取key。


agent.hostname

返回被監控端名稱(字符串)


agent.ping

檢測被監控端是否存活(1:運行中 其他:未運行)-使用函數 nodata()檢測客戶端是否正在運行


agent.version

zabbix agent版本字符串


kernel.maxfiles

系統支持最大的open files整數


kernel.maxproc

系統支持最大的進程數量整數


log[file,<regexp>,<encoding>,<maxlines>,<mode>,<output>]

監控日誌文件

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,<regexp>,<encoding>,<maxlines>,<mode>,<output>]

Monitoring of log file with log rotation support.

file_pattern - 文件絕對路徑 


net.dns[<ip>,zone,<type>,<timeout>,<count>]

檢測DNS服務是否開啓0 – DNS掛了  1 - DNS運行中

ip - DNS服務器的ip地址(留空表示使用本地DNS, ignored onWindows)

zone - 需要測試的域名

type - 記錄類型 (默認爲 SOA),type可選值:  ANY, A, NS, CNAME, MB, MG, MR, PTR, MD, MF, MX, SOA, NULL, WKS (除了windows), HINFO, MINFO, TXT, SRV SRV

timeout (ignored on Windows) – 超時時間(默認1秒)

count (ignored on Windows) – 重試次數 (默認值2)

示例key: net.dns[8.8.8.8,zabbix.com,MX,2,1]  


net.dns.record[<ip>,zone,<type>,<timeout>,<count>]

執行一個DNS查詢獲取DNS查詢數據.

ip - DNS服務器的ip地址(留空表示使用本地DNS, ignored on Windows)

zone - 需要測試的域名

type - 記錄類型 (默認SOA,可選值同net.dns)

timeout (ignored on Windows) – 超時時間(默認1秒) 

count (ignored on Windows) – 重試次數 (默認值2)

示例key: net.dns.record[8.8.8.8,ttlsa.com,MX,2,1]


net.if.collisions[if]

Out-of-window collision.Number of collisions. Integer.if - 網卡


net.if.discovery

列出網卡.通常用於低級別的discovery.JSON對象


net.if.in[if,<mode>]

網卡入口流量整數.

if - 網卡名稱 

mode - 可用值: bytes - 字節數 (默認) 

packets - 包數量

errors - 錯誤數量 

dropped - 丟包數量

示例keys: net.if.in[eth0,errors] net.if.in[eth0] 


net.if.out[if,<mode>]

網卡出口流量(參數參見net.if.in)


net.if.total[if,<mode>]

網卡進/出流量的總和(參數參見net.if.in)


net.tcp.listen[port]

檢測端口是否開啓0 – (not listen) 1 –  in LISTEN stateport 

示例: net.tcp.listen[80] 


net.tcp.port[<ip>,port]

是否可以連接到指定的TCP端口0 – cannot connect 1 – can connect

  ip - IP地址(默認是 127.0.0.1) 

  port - 端口

範例: net.tcp.port[,80] 檢測web服務器端口是否運行中

 

net.tcp.service[service,<ip>,<port>]

檢測服務是否開啓,並且端口可用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,<ip>,<port>]

檢測服務器性能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] 

         net.udp.listen[port]


proc.mem[<name>,<user>,<mode>,<cmdline>]

用戶進程消耗的內存內存使用量 (字節單位).

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>,<user>,<state>,<cmdline>]

某用戶某些狀態的進程的數量進程數量

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兩個參數


sensor[device,sensor,<mode>]

讀取硬件傳感器

device - 設備名稱  

sensor - 傳感器名稱  

mode - 可選值:avg, max, min 

示例key: sensor[w83781d-i2c-0-2d,temp1] Prior to Zabbix 1.8.4, the sensor[temp1] format was used. On Linux 2.6+, 讀取/sys/class/hwmon. On OpenBSD, 讀取hw.sensors MIB.示例keys: sensor[cpu0,temp0] – CPU0的溫度 sensor[cpu[0-2]$,temp,avg] – cpu平均溫度Zabbix 1.8.4開始支持OpenBSD 

system.boottime

系統啓動的時間戳整數.unix時間戳

system.cpu.intr

設備中斷整數

system.cpu.load[<cpu>,<mode>]

CPU負載浮點數

cpu - 可用值: all (默認), percpu (所有在線cpu的負載) 

mode - 可用值:avg1 (1分鐘 默認值), avg5(5分鐘平均), avg15 (15分鐘平均值)

範例key: system.cpu.load[,avg5]

system.cpu.num[<type>]

CPU數量處理器個數type - 可用值: online (默認值), max範例: system.cpu.num

system.cpu.switches

上下文交換交換次數老命名方式: system[switches]

system.cpu.util[<cpu>,<type>,<mode>]

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>]

返回主機名字符串

type (僅用於windows系統) – 可用值: netbios(默認) or host

system.hw.chassis[<info>]

返回機架信息字符串

info - full (默認), model, serial, type 或vendor

例如: system.hw.chassis

Hewlett-Packard HP Pro 3010 Small Form Factor PC CZXXXXXXXX Desktop] 

備註:要root權限,因爲這些信息是從內存中讀取的。

system.hw.cpu[<cpu>,<info>]

返回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[<type>]

列出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[<interface>,<format>]

列出MAC地址字符串

interface - all (默認) 或者正則表達式 

format - full (默認) 、short

範例: system.hw.macaddr["eth0$",full] [eth0] 00:11:22:33:44:55 列出指定接口mac地址 如果format指定爲short,MAC地址相同的將會被忽略掉

system.localtime[<type>]

系統時間.數字或者字符串

system.run[command,<mode>]

在制定的主機上運行命令文本

command - 命令 

mode - wait (默認值, 執行超時時間), nowait (不等待)最大可用返回512KB數據,包含空白數據。 命令輸出數據必須是文本 

例如: system.run[ls -l /] – 列出/的文件和目錄. 

Note: 啓用這個方法, agent配置文件必須配置 EnableRemoteCommands=1選項

system.stat[resource,<type>]

虛擬內存狀態數字ent 


system.sw.arch

返回軟件信息字符串

範例: system.sw.arch i686 


system.sw.os[<info>]

返回系統信息字符串

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>,<manager>,<format>]

已安裝軟件列表文本值

package - all (默認)或者正則表達式 

manager - all (默認) or a package manager 

format - full (默認) ,short

範例: system.sw.packages[mini,dpkg,short] 


system.swap.in[<device>,<type>]

交換分區IN(磁盤交換到內存)數字

device - 交換分區設備 (默認all) 

type - 可選值: count (swapins數量), sectors(sectors swapped in), pages (pages swapped in).

示例key: system.swap.in[,pages] 

數據採集自: Linux 2.4: /proc/swaps, /proc/partitions, /proc/stat 

           Linux 2.6: /proc/swaps, /proc/diskstats, /proc/vmstat


system.swap.out[<device>,<type>]

Swap out (f內存到磁盤) .數字

device - swap設備 (默認all) 

type - count (number of swapouts), sectors(sectors swapped out), pages (pages swapped out).

例key: system.swap.out[,pages] 

數據採集自: Linux 2.4: /proc/swaps, /proc/partitions, /proc/stat 

           Linux 2.6: /proc/swaps, /proc/diskstats, /proc/vmstat


system.swap.size[<device>,<type>]

交換分區大小字節或者百分比

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[<device>,<type>,<mode>]

磁盤讀取狀態整數,浮點數(如果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>,<type>,<mode>]

磁盤寫入狀態整數,

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]

計算文件校驗 UNIX cksum.

file - 文件完整路徑


vfs.file.contents[file,<encoding>]

獲取文本內容若爲空,只返回 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,<encoding>,<start line>,<end line>,<output>]

文件中搜索字符串包含字符串的行,或者爲空

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,<encoding>,<start line>,<end line>]

文件中搜索字符串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,<mode>]

文件時間信息Unix 時間戳.

mode -  modify (默認, 修改時間), access – 最後訪問時間, change – 最後改變時間

例如: vfs.file.time[/etc/passwd,modify] 備註:文件大小有限制

vfs.fs.discovery

列出掛載的文件系統 用於lld.JSON對象


vfs.fs.inode[fs,<mode>]

inodes數量數字

fs - 文件系統 

mode - total (默認), free, used, pfree (空閒百分比), pused (使用百分比)

例如: vfs.fs.inode[/,pfree] 


vfs.fs.size[fs,<mode>]

磁盤空間,返回本地文件系統的使用量字節

fs - 文件系統 

mode -  total (默認), free, used, pfree (空閒百分比), pused (使用百分比)

例如: vfs.fs.size[/tmp,free] 


vm.memory.size[<mode>]

內存大小字節或百分比

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,<path>,<port>]

獲取網頁內容網頁源代碼

host - 主機名/域名 

path - 文件地址,默認/ 

port - 端口,默認80返回空字符串表示失敗. 例如: web.page.get[www.ttlsa.com,/,80]


web.page.perf[host,<path>,<port>]

獲取完全加載網頁消耗的時長秒,返回0表示失敗

host - 主機名/域名 

path - html地址,默認是/ 

port - 端口,默認80


web.page.regexp[host,<path>,<port>,<regexp>,<length>,<output>]

在網頁中搜索字符串  失敗則返回空字符 (不匹配). 

host - 主機名

path - html文件路徑 (默認值 /)

port - 端口 (默認80)

regexp - GNU正則表達式

length - 返回的最大的字符串數量

output - 輸出格式模板可選項. 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章