1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
<code>agent.</code><code>hostname</code>
<code>傳回被監控端名稱(字元串) </code>
<code>使用方式列舉:後面使用的方式是一樣的: </code>
<code>[root@BJ-monitor-h-01 bin]</code><code># ./zabbix_get -s 192.168.10.100 -k agent.hostname </code>
<code>Zabbix server </code>
<code> </code>
<code>agent.</code><code>ping</code>
<code> </code><code>檢測被監控端是否存活(1:運作中 其他:未運作)-使用函數 nodata()檢測用戶端是否正在運作 </code>
<code>agent.version </code>
<code> </code><code>zabbix agent 版本字元串 </code>
<code>kernel.maxfiles </code>
<code> </code><code>系統支援最大的 </code><code>open</code> <code>files 整數 </code>
<code>kernel.maxproc </code>
<code> </code><code>系統支援最大的程序數量整數 </code>
<code>log[</code><code>file</code><code>,<regexp>,<encoding>,<maxlines>,<mode>,<output>] </code>
<code> </code><code>監控日志檔案 </code>
<code> </code><code>file</code> <code>- 檔案詳細路徑 </code>
<code> </code><code>regexp - 正則 </code>
<code> </code><code>encoding - 編碼 </code>
<code> </code><code>maxlines - zabbix agent 向 server 或者 proxy 發送最大的行數。 </code>
<code> </code><code>這個參數覆寫配置檔案 zabbxi_agentd.conf 中的’MaxLinesPerSecond’ </code>
<code>mode - 可選值:all (預設), skip (跳過處理老資料).mode 參數從 2.0 版本開始支援 </code>
<code>output - 可選項,輸出格式模闆. </code>
<code>示例: log[</code><code>/var/log/syslog</code><code>] log[</code><code>/var/log/syslog</code><code>,error] log[</code><code>/home/zabbix/logs/logfile</code><code>,,,100] </code>
<code>logrt[file_pattern,<regexp>,<encoding>,<maxlines>,<mode>,<output>] </code>
<code> </code><code>Monitoring of log </code><code>file</code> <code>with log rotation support. </code>
<code> </code><code>file_pattern - 檔案絕對路徑 </code>
<code>net.</code><code>if</code><code>.discovery </code>
<code>列出網卡.通常用于低級别的 discovery.JSON 對象 </code>
<code>net.</code><code>if</code><code>.</code><code>in</code><code>[</code><code>if</code><code>,<mode>] </code>
<code> </code><code>網卡入口流量整數. </code>
<code> </code><code>if</code> <code>- 網卡名稱 </code>
<code> </code><code>mode - 可用值: bytes - 位元組數 (預設) </code>
<code> </code><code>packets - 包數量 </code>
<code> </code><code>errors - 錯誤數量 </code>
<code> </code><code>dropped - 丢包數量 </code>
<code>示例 keys: net.</code><code>if</code><code>.</code><code>in</code><code>[eth0,errors] net.</code><code>if</code><code>.</code><code>in</code><code>[eth0] </code>
<code>net.</code><code>if</code><code>.out[</code><code>if</code><code>,<mode>] </code>
<code> </code><code>網卡出口流量(參數參見 net.</code><code>if</code><code>.</code><code>in</code><code>) </code>
<code>net.</code><code>if</code><code>.total[</code><code>if</code><code>,<mode>] </code>
<code> </code><code>網卡進/出流量的總和(參數參見 net.</code><code>if</code><code>.</code><code>in</code><code>) </code>
<code>net.tcp.listen[port] </code>
<code> </code><code>檢測端口是否開啟 0 – (not listen) 1 – </code><code>in</code> <code>LISTEN stateport </code>
<code> </code><code>示例: net.tcp.listen[80] </code>
<code>net.tcp.port[<ip>,port] </code>
<code>是否可以連接配接到指定的 TCP 端口 0 – cannot connect 1 – can connect </code>
<code> </code><code>ip - IP 位址(預設是 127.0.0.1) </code>
<code> </code><code>port - 端口 </code>
<code>範例: net.tcp.port[,80] 檢測 web 伺服器端口是否運作中 </code>
<code>net.tcp.service[service,<ip>,<port>] </code>
<code> </code><code>檢測服務是否開啟,并且端口可用 0 – 服務挂了 1 – 服務運作中 </code>
<code> </code><code>service - 如下:</code><code>ssh</code><code>, ntp, ldap, smtp, </code><code>ftp</code><code>, http, pop, nntp,imap, tcp, https, telnet </code>
<code> </code><code>ip - IP 位址 (預設 127.0.0.1) </code>
<code> </code><code>port - 端口 (預設情況為标準端口号) </code>
<code>示例 key: net.tcp.service[</code><code>ftp</code><code>,,45] </code>
<code>net.tcp.service.perf[service,<ip>,<port>] </code>
<code> </code><code>檢測伺服器性能 0 – 服務挂了; seconds – 連結到伺服器端口消耗的時間 </code>
<code> </code><code>service - 如下:</code><code>ssh</code><code>, ntp, ldap, smtp, </code><code>ftp</code><code>, http, pop, nntp,imap, tcp, https, telnet </code>
<code> </code><code>ip - IP 位址 (預設 127.0.0.1) </code>
<code> </code><code>port - 端口 (預設情況為标準端口号) </code>
<code> </code><code>示例 key: net.tcp.service.perf[</code><code>ssh</code><code>] </code>
<code>proc.mem[<name>,<user>,<mode>,<cmdline>] </code>
<code> </code><code>使用者程序消耗的記憶體記憶體使用量 (位元組機關). </code>
<code> </code><code>name - 程序名 (預設值 “all processes”) </code>
<code> </code><code>user - 使用者名 (預設值“all </code><code>users</code><code>”) </code>
<code> </code><code>mode - 可選值: avg, max, min, </code><code>sum</code> <code>(預設) </code>
<code> </code><code>cmdline - 指令行過濾(正則表達時) </code>
<code>示例 keys: proc.mem[,root] – root 的程序消耗了多少記憶體 </code>
<code> </code><code>proc.mem[zabbix_server,zabbix] – zabbix 使用者運作的 zabbix_server 使用了多少記憶體 </code>
<code> </code><code>proc.mem[,oracle,max,oracleZABBIX] </code>
<code>proc.num[<name>,<user>,<state>,<cmdline>] </code>
<code> </code><code>某使用者某些狀态的程序的數量程序數量 </code>
<code> </code><code>name - 程序名稱 (預設“all processes”) </code>
<code> </code><code>user - 使用者名 (預設 “all </code><code>users</code><code>”) </code>
<code> </code><code>state - 可用值: all (預設), run,</code><code>sleep</code><code>, zomb </code>
<code> </code><code>示例 keys: proc.num[,mysql] – MySQL 使用者運作的程序數量 </code>
<code> </code><code>proc.num[apache2,www-data] – www-data 運作了多少個 apache2 程序 </code>
<code> </code><code>proc.num[,oracle,</code><code>sleep</code><code>,oracleZABBIX] </code>
<code>備注:Windows 系統隻支援 name 和 user 兩個參數 </code>
<code>system.boottime </code>
<code> </code><code>系統啟動的時間戳整數.unix 時間戳 </code>
<code>system.cpu.intr </code>
<code> </code><code>裝置中斷整數 </code>
<code>system.cpu.load[<cpu>,<mode>] </code>
<code> </code><code>CPU 負載浮點數 </code>
<code> </code><code>cpu - 可用值: all (預設), percpu (所有線上 cpu 的負載) </code>
<code> </code><code>mode - 可用值:avg1 (1 分鐘 預設值), avg5(5 分鐘平均), avg15 (15 分鐘平均值) </code>
<code>範例 key: system.cpu.load[,avg5] </code>
<code> </code>
<code>system.cpu.num[<</code><code>type</code><code>>] </code>
<code> </code><code>CPU 數量處理器個數 </code><code>type</code> <code>- 可用值: online (預設值), max 範例: system.cpu.num </code>
<code>system.cpu.switches </code>
<code> </code><code>上下文交換交換次數老命名方式: system[switches] </code>
<code>system.cpu.util[<cpu>,<</code><code>type</code><code>>,<mode>] </code>
<code> </code><code>CPU 使用率百分比 </code>
<code> </code><code>cpu - cpu 數量 (預設是所有 cpu) </code>
<code> </code><code>type</code> <code>- 可用值: idle, </code><code>nice</code><code>, user (預設), system (windows 系統預設值), iowait, interrupt, </code>
<code>softirq,steal </code>
<code> </code><code>mode - 可用值: avg1 (一分鐘平均,預設值), avg5(5 分鐘平均, avg15 (15 分鐘平均值) </code>
<code>範例 key: system.cpu.util[0,user,avg5] </code>
<code>system.</code><code>hostname</code><code>[<</code><code>type</code><code>>] </code>
<code> </code><code>傳回主機名字元串 </code>
<code> </code><code>type</code> <code>(僅用于 windows 系統) – 可用值: netbios(預設) or host </code>
<code>system.hw.cpu[<cpu>,<info>] </code>
<code> </code><code>傳回 CPU 資訊字元/數字 </code>
<code> </code><code>cpu - cpu 數量或者 all (預設) </code>
<code> </code><code>info - full (預設), curfreq, maxfreq, model 或者 vendor </code>
<code> </code><code>例如: system.hw.cpu[0,vendor] AuthenticAMD 從 </code><code>/proc/cpuinfo</code> <code>、 </code>
<code>/sys/devices/system/cpu/</code><code>[cpunum]</code><code>/cpufreq/cpuinfo_max_freq</code> <code>擷取資訊. 如果指定了 CPU 數量和 </code>
<code>curfreq 或者 maxfreq, 将會傳回數值(Hz). </code>
<code>system.hw.devices[<</code><code>type</code><code>>] </code>
<code>列出 PCI 或者 USB 文本值 </code>
<code>type</code> <code>- pci (預設) or usb </code>
<code>範例: system.hw.devices[pci] 00:00.0 Host bridge: Advanced Micro Devices [AMD] RS780 Host </code>
<code>Bridge [..] 傳回 lspci 或者 lsusb (不帶參數) </code>
<code>system.hw.macaddr[<interface>,<</code><code>format</code><code>>] </code>
<code>列出 MAC 位址字元串 </code>
<code>interface - all (預設) 或者正規表達式 </code>
<code>format</code> <code>- full (預設) 、short </code>
<code>範例: system.hw.macaddr[</code><code>"eth0$"</code><code>,full] [eth0] 00:11:22:33:44:55 列出指定接口 mac 位址 如果</code>
<code>format</code> <code>指定為 short,MAC 位址相同的将會被忽略掉 </code>
<code>system.localtime[<</code><code>type</code><code>>] </code>
<code>系統時間.數字或者字元串 </code>
<code>system.run[</code><code>command</code><code>,<mode>] </code>
<code> </code><code>在制定的主機上運作指令文本 </code>
<code>command</code> <code>- 指令 </code>
<code>mode - wait (預設值, 執行逾時時間), nowait (不等待)最大可用傳回 512KB 資料,包含空白資料。 </code>
<code>指令輸出資料必須是文本 </code>
<code>例如: system.run[“</code><code>ls</code> <code>-l /”] – 列出/的檔案和目錄. </code>
<code>Note: 啟用這個方法, agent 配置檔案必須配置 EnableRemoteCommands=1 選項 </code>
<code>system.sw.arch </code>
<code>傳回軟體資訊字元串 </code>
<code>範例: system.sw.arch </code>
<code>system.sw.os[<info>] </code>
<code>傳回系統資訊字元串 </code>
<code>info - full (default), short ,name </code>
<code>範例: system.sw.os[short] Ubuntu 2.6.35-28.50-generic 2.6.35.11 </code>
<code>資訊來自如下檔案: </code>
<code>/proc/version</code> <code>[short] </code>
<code>/proc/version_signature</code> <code>[name] </code>
<code>/etc/issue</code><code>.net </code>
<code>system.sw.packages[<package>,<manager>,<</code><code>format</code><code>>] </code>
<code>已安裝軟體清單文本值 </code>
<code>package - all (預設)或者正規表達式 </code>
<code>manager - all (預設) or a package manager </code>
<code>format</code> <code>- full (預設) ,short </code>
<code>範例: system.sw.packages[http] </code>
<code>system.swap.</code><code>in</code><code>[<device>,<</code><code>type</code><code>>] </code>
<code>交換分區 IN(磁盤交換到記憶體)數字 </code>
<code>device - 交換分區裝置 (預設 all) </code>
<code>type</code> <code>- 可選值: count (swapins 數量), sectors(sectors swapped </code><code>in</code><code>), pages (pages swapped </code>
<code>in</code><code>). </code>
<code>示例 key: system.swap.</code><code>in</code><code>[,pages] </code>
<code>資料采集自: Linux 2.4: </code><code>/proc/swaps</code><code>, </code><code>/proc/partitions</code><code>, </code><code>/proc/stat</code>
<code> </code><code>Linux 2.6: </code><code>/proc/swaps</code><code>, </code><code>/proc/diskstats</code><code>, </code><code>/proc/vmstat</code>
<code>system.swap.out[<device>,<</code><code>type</code><code>>] </code>
<code>Swap out (f 記憶體到磁盤) .數字 </code>
<code>device - swap 裝置 (預設 all) </code>
<code>type</code> <code>- count (number of swapouts), sectors(sectors swapped out), pages (pages swapped </code>
<code>out). 示 </code>
<code>例 key: system.swap.out[,pages] </code>
<code>system.swap.size[<device>,<</code><code>type</code><code>>] </code>
<code>交換分區大小位元組或者百分比 </code>
<code>device - 交換分區 (預設值 all) </code>
<code>type</code> <code>- </code><code>free</code> <code>(</code><code>free</code> <code>swap space, default), pfree (</code><code>free</code> <code>swap space, </code><code>in</code> <code>percent), pused (used </code>
<code>swap space, </code><code>in</code> <code>percent), total (total swap space), used (used swap space) </code>
<code>示例 system.swap.size[,pfree] – 空閑 swap 百分比 </code>
<code>system.</code><code>uname</code>
<code>傳回主機相信資訊.字元串 </code>
<code>system.uptime </code>
<code>系統運作時長(秒)多少秒使用 s</code><code>/uptime</code> <code>來擷取 </code>
<code>system.</code><code>users</code><code>.num </code>
<code>登陸使用者數量多少使用者 agent 使用 </code><code>who</code> <code>指令擷取 </code>
<code>vfs.dev.</code><code>read</code><code>[<device>,<</code><code>type</code><code>>,<mode>] </code>
<code>磁盤讀取狀态整數,浮點數(如果 </code><code>type</code> <code>為如下) </code>
<code>device - 磁盤裝置 (預設值 “all”) </code>
<code>type</code> <code>- 可選值:sectors, operations, bytes, sps, ops, bps(必須指定, 不同作業系統下不同). </code>
<code>sps, ops, bps stand </code><code>for</code><code>: sectors, operations, bytes per second, respectively </code>
<code>mode - 可選值: avg1, avg5, avg15. </code>
<code>備注: 隻有 </code><code>type</code> <code>為 sps, ops, bps 的時候,第三個參數才被支援。 </code>
<code>不同作業系統的 TYPE 參數: FreeBSD – bps Linux – sps OpenBSD – operations Solaris – </code>
<code>bytes </code>
<code>示例 key: vfs.dev.</code><code>read</code><code>[,operations] </code>
<code>vfs.dev.write[<device>,<</code><code>type</code><code>>,<mode>] </code>
<code>磁盤寫入狀态整數, </code>
<code>device - 磁盤裝置 (預設 all) </code>
<code>type</code> <code>- sectors, operations, bytes, sps, ops, bps </code>
<code>mode - one of avg1 (default),avg5 , avg15. </code>
<code>example: vfs.dev.write[,operations] Old naming: io </code>
<code>vfs.</code><code>file</code><code>.cksum[</code><code>file</code><code>] </code>
<code>計算檔案校驗 UNIX cksum. </code>
<code>file</code> <code>- 檔案完整路徑 </code>
<code>vfs.</code><code>file</code><code>.contents[</code><code>file</code><code>,<encoding>] </code>
<code>擷取文本内容若為空,隻傳回 LF</code><code>/CR</code> <code>characters. </code>
<code>例如: vfs.</code><code>file</code><code>.contents[</code><code>/etc/passwd</code><code>] 檔案不可以超過 64KB. </code>
<code>vfs.</code><code>file</code><code>.exists[</code><code>file</code><code>] </code>
<code>檢測檔案是否存在 1 – 存在 0 – 不存在 </code>
<code> </code><code>file</code> <code>- 檔案完整路徑 </code>
<code>vfs.</code><code>file</code><code>.md5sum[</code><code>file</code><code>] </code>
<code>檔案 MD5 校驗碼檔案 MD5 哈希值 </code>
<code>file</code> <code>- 完整路徑 </code>
<code>vfs.</code><code>file</code><code>.regexp[</code><code>file</code><code>,regexp,<encoding>,<start line>,<end line>,<output>] </code>
<code>檔案中搜尋字元串包含字元串的行,或者為空 </code>
<code>regexp - GNU 正規表達式 </code>
<code>encoding - 編碼 </code>
<code>start line - 從哪一行開始,預設第一行 </code>
<code>end line - 從哪一行結束,預設最後一行 </code>
<code>如: vfs.</code><code>file</code><code>.regexp[</code><code>/etc/passwd</code><code>,zabbix] </code>
<code> </code><code>vfs.</code><code>file</code><code>.regexp[</code><code>/path/to/some/file</code><code>,”([0-9]+)$”,,3,5,\1] </code>
<code> </code><code>vfs.</code><code>file</code><code>.regexp[</code><code>/etc/passwd</code><code>,^zabbix:.:([0-9]+),,,,\1] </code>
<code>vfs.</code><code>file</code><code>.regmatch[</code><code>file</code><code>,regexp,<encoding>,<start line>,<end line>] </code>
<code>檔案中搜尋字元串 0 – 未找到 1 – 找到 </code>
<code>start line - 哪行開始,預設第一行 </code>
<code>end line - 哪行結束,預設最後一行 </code>
<code>例如: vfs.</code><code>file</code><code>.regmatch[</code><code>/var/log/app</code><code>.log,error] </code>
<code>vfs.</code><code>file</code><code>.size[</code><code>file</code><code>] </code>
<code>檔案大小位元組 fzabbix 必須有可讀此檔案的權限 </code>
<code>vfs.</code><code>file</code><code>.</code><code>time</code><code>[</code><code>file</code><code>,<mode>] </code>
<code>檔案時間資訊 Unix 時間戳. </code>
<code>mode - modify (預設, 修改時間), access – 最後通路時間, change – 最後改變時間 </code>
<code>例如: vfs.</code><code>file</code><code>.</code><code>time</code><code>[</code><code>/etc/passwd</code><code>,modify] 備注:檔案大小有限制 </code>
<code>vfs.fs.discovery </code>
<code>列出挂載的檔案系統 用于 lld.JSON 對象 </code>
<code>vfs.fs.inode[fs,<mode>] </code>
<code>inodes 數量數字 </code>
<code>fs - 檔案系統 </code>
<code>mode - total (預設), </code><code>free</code><code>, used, pfree (空閑百分比), pused (使用百分比) </code>
<code>例如: vfs.fs.inode[/,pfree] </code>
<code>vfs.fs.size[fs,<mode>] </code>
<code>磁盤空間,傳回本地檔案系統的使用量位元組 </code>
<code>mode - total (預設), </code><code>free</code><code>, used, pfree (空閑百分比), pused (使用百分比). </code>
<code>例如: vfs.fs.size[</code><code>/tmp</code><code>,</code><code>free</code><code>] </code>
<code>vm.memory.size[<mode>] </code>
<code>記憶體大小位元組或百分比 </code>
<code>mode - total (預設), active, anon, buffers, cached, </code><code>exec</code><code>, </code><code>file</code><code>, </code><code>free</code><code>, inactive, pinned, </code>
<code>shared, wired, used, pused, available </code>
<code>監控項 vm.memory.size[] 允許三種類型的參數: </code>
<code>第一類:包含 total - 總記憶體 </code>
<code>第二類: 系統指定記憶體類型:active, anon, buffers, cached, </code><code>exec</code><code>, </code><code>file</code><code>, </code><code>free</code><code>, inactive,pinned, </code>
<code>shared, wired. 第三類:使用者級别,一共使用了多少記憶體,還有多少記憶體可用: used, pused, </code>
<code>available,pavailable. </code>
<code>web.page.get[host,<path>,<port>] </code>
<code>擷取網頁内容網頁源代碼 </code>
<code>host - 主機名/域名 </code>
<code>path - 檔案位址,預設/ </code>
<code>port - 端口,預設 80 傳回空字元串表示失敗. 例如: web.page.get[ </code>
<code>web.page.perf[host,<path>,<port>] </code>
<code>擷取完全加載網頁消耗的時長秒,傳回 0 表示失敗 </code>
<code>path - html 位址,預設是/ </code>
<code>port - 端口,預設 80 </code>
<code> </code><code>[root@BJ-monitor-h-01 bin]</code><code># ./zabbix_get -s 192.168.10.100 -k web.page.perf[www.baidu.com] </code>
<code>web.page.regexp[host,<path>,<port>,<regexp>,<length>,<output>] </code>
<code>在網頁中搜尋字元串 失敗則傳回空字元 (不比對). </code>
<code>host - 主機名 </code>
<code>path - html 檔案路徑 (預設值 /) </code>
<code>port - 端口 (預設 80) </code>
<code>length - 傳回的最大的字元串數量 </code>
<code>output - 輸出格式模闆可選項.</code>
本文轉自 小小三郎1 51CTO部落格,原文連結:,如需轉載請自行聯系原作者