2 Windows Zabbixエージェント
概要
Windows Zabbixエージェントのアイテムは、2つのリストで表示されます。
- 共通アイテム - UNIX Zabbixエージェントと共通のアイテムキー
- Windows固有のアイテム - Windowsのみでサポートされているアイテムキー
Windows上のZabbixエージェントでサポートされているすべてのアイテムキーは、新世代のZabbixエージェント2でもサポートされていることに注意してください。 エージェント2でのみ使用できる追加のアイテムキーも参照してください。
参考: Windowsアイテムの最小権限
共有アイテム
以下の表は、Windowsでサポートされており、UNIX Zabbixエージェントと共有されているZabbixエージェントアイテムを示しています。
- アイテムキーはUNIX Zabbixエージェントアイテムの詳細へのリンクです
- Windowsに関連するアイテムのコメントが含まれています
| アイテムキー | 説明 | アイテムグループ |
|---|---|---|
| log | ログファイルの監視。このアイテムはWindowsイベントログには対応していません。persistent_dirパラメータはWindowsではサポートされていません。 |
ログ監視 |
| log.count | 監視対象のログファイル内で一致した行数。このアイテムはWindowsイベントログには対応していません。persistent_dirパラメータはWindowsではサポートされていません。 |
|
| logrt | ローテートされるログファイルの監視。このアイテムはWindowsイベントログには対応していません。persistent_dirパラメータはWindowsではサポートされていません。 |
|
| logrt.count | ローテートされる監視対象のログファイル内で一致した行数。このアイテムはWindowsイベントログには対応していません。persistent_dirパラメータはWindowsではサポートされていません。 |
|
| modbus.get | Modbusデータの読み取り。 | Modbus |
| net.dns | DNSサービスが稼働しているかどうかをチェックします。 Windowsでは、Zabbix agent 2を使用しない限り、 ip、timeout、countパラメータは無視されます。 |
ネットワーク |
| net.dns.perf | DNSサービスのパフォーマンスをチェックします。 Windowsでは、Zabbix agent 2を使用しない限り、 ip、timeout、countパラメータは無視されます。 |
|
| net.dns.record | DNSクエリを実行します。 Windowsでは、Zabbix agent 2を使用しない限り、 ip、timeout、countパラメータは無視されます。 |
|
| net.if.discovery | ネットワークインターフェースの一覧。 一部のWindowsバージョン(例:Server 2008)では、インターフェース名に非ASCII文字をサポートするために最新のアップデートが必要な場合があります。 |
|
| net.if.in | ネットワークインターフェースの受信トラフィック統計。 Windowsでは、利用可能な場合は64ビットカウンタから値を取得します。64ビットインターフェース統計カウンタはWindows VistaおよびWindows Server 2008で導入されました。64ビットカウンタが利用できない場合、エージェントは32ビットカウンタを使用します。 Windowsではマルチバイトインターフェース名がサポートされています。 Windowsでネットワークインターフェースの説明を取得するには、net.if.discoveryまたはnet.if.listアイテムを使用できます。 |
|
| net.if.out | ネットワークインターフェースの送信トラフィック統計。 Windowsでは、利用可能な場合は64ビットカウンタから値を取得します。64ビットインターフェース統計カウンタはWindows VistaおよびWindows Server 2008で導入されました。64ビットカウンタが利用できない場合、エージェントは32ビットカウンタを使用します。 Windowsではマルチバイトインターフェース名がサポートされています。 Windowsでネットワークインターフェースの説明を取得するには、net.if.discoveryまたはnet.if.listアイテムを使用できます。 |
|
| net.if.total | ネットワークインターフェースの受信および送信トラフィック統計の合計。 Windowsでは、利用可能な場合は64ビットカウンタから値を取得します。64ビットインターフェース統計カウンタはWindows VistaおよびWindows Server 2008で導入されました。64ビットカウンタが利用できない場合、エージェントは32ビットカウンタを使用します。 Windowsでネットワークインターフェースの説明を取得するには、net.if.discoveryまたはnet.if.listアイテムを使用できます。 |
|
| net.tcp.listen | このTCPポートがLISTEN状態かどうかをチェックします。 | |
| net.tcp.port | 指定したポートにTCP接続できるかどうかをチェックします。 | |
| net.tcp.service | サービスが稼働しており、TCP接続を受け付けているかどうかをチェックします。 WindowsでのLDAPおよびHTTPSのチェックはZabbix agent 2のみサポートされています。 |
|
| net.tcp.service.perf | TCPサービスのパフォーマンスをチェックします。 WindowsでのLDAPおよびHTTPSのチェックはZabbix agent 2のみサポートされています。 |
|
| net.tcp.socket.count | パラメータに一致するTCPソケットの数を返します。 このアイテムはLinuxではZabbixエージェントでサポートされていますが、Windowsでは64ビットWindows上のZabbix agent 2のみサポートされています。 |
|
| net.udp.service | サービスが稼働しており、UDPリクエストに応答しているかどうかをチェックします。 | |
| net.udp.service.perf | UDPサービスのパフォーマンスをチェックします。 | |
| net.udp.socket.count | パラメータに一致するUDPソケットの数を返します。 このアイテムはLinuxではZabbixエージェントでサポートされていますが、Windowsでは64ビットWindows上のZabbix agent 2のみサポートされています。 |
|
| proc.get | OSプロセスとそのパラメータの一覧。 Windowsでは cmdlineパラメータはサポートされていません。 |
プロセス |
| proc.num | プロセス数。 Windowsでは、 nameおよびuserパラメータのみサポートされています。 |
|
| system.cpu.discovery | 検出されたCPU/CPUコアの一覧。 | システム |
| system.cpu.load | CPU負荷。 Zabbixエージェントでコレクタープロセスが開始されると、次のパフォーマンスカウンタが初期化され、このアイテムで使用されます: \System\Processor Queue Length |
|
| system.cpu.num | CPU数。 | |
| system.cpu.util | CPU使用率(パーセンテージ)。 値はProcessor Timeパフォーマンスカウンタを使用して取得されます。Windows 8以降、タスクマネージャーはProcessor Utilityパフォーマンスカウンタに基づいてCPU使用率を表示しますが、以前のバージョンではProcessor Timeカウンタでした(詳細はこちらを参照)。 Windowsでサポートされている typeパラメータはsystemのみです。 |
|
| system.hostname | システムホスト名。 Windowsでは、GetComputerName()(netbiosの場合)、GetComputerNameExA()(fqdnの場合)、またはgethostname()(hostの場合)関数のいずれかで値が取得されます。 詳細な説明も参照してください。 |
|
| system.localtime | システム時刻。 | |
| system.run | ホスト上で指定したコマンドを実行します。 | |
| system.sw.arch | ソフトウェアアーキテクチャ情報。 | |
| system.sw.os | オペレーティングシステム情報。 | |
| system.sw.os.get | オペレーティングシステムの詳細情報(バージョン、タイプ、ディストリビューション名、マイナーおよびメジャーバージョンなど)。 | |
| system.swap.size | スワップ領域のサイズ(バイト単位または合計に対するパーセンテージ)。pusedタイプパラメータはLinuxではZabbixエージェントでサポートされていますが、WindowsではZabbix agent 2のみサポートされています。このキーは仮想化(VMware ESXi、VirtualBox)されたWindowsプラットフォーム上でスワップ領域のサイズ/パーセンテージを誤って報告する場合があります。この場合、 perf_counter[\700(_Total)\702]キーを使用して正しいスワップ領域のパーセンテージを取得できます。 |
|
| system.uname | システムの識別。 Windowsでは、このアイテムの値はWin32_OperatingSystemおよびWin32_Processor WMIクラスから取得されます。OS名(エディションを含む)はユーザーの表示言語に翻訳される場合があります。一部のWindowsバージョンでは、商標記号や余分なスペースが含まれることがあります。 |
|
| system.uptime | システムの稼働時間(秒単位)。 | |
| vfs.dir.count | ディレクトリエントリ数。 Windowsでは、ディレクトリシンボリックリンクはスキップされ、ハードリンクは1回だけカウントされます。 |
仮想ファイルシステム |
| vfs.dir.get | ディレクトリエントリの一覧。 Windowsでは、ディレクトリシンボリックリンクはスキップされ、ハードリンクは1回だけカウントされます。 |
|
| vfs.dir.size | ディレクトリサイズ。 Windowsでは、すべてのシンボリックリンクはスキップされ、ハードリンクは1回だけカウントされます。 |
|
| vfs.file.cksum | UNIX cksumアルゴリズムで計算されたファイルのチェックサム。 | |
| vfs.file.contents | ファイルの内容の取得。 | |
| vfs.file.exists | ファイルの存在をチェックします。 Windowsでは、zabbix_get.exeまたはagent2をコマンドラインユーティリティで呼び出す場合、ダブルクォートはバックスラッシュ'\'でエスケープし、アイテムキー全体をダブルクォートで囲む必要があります。 Windowsでは、存在しないディレクトリ内でディレクトリを検索した場合(例: vfs.file.exists[C:\no\dir,dir]('no'が存在しない場合))、アイテムが未サポートになる場合があります。 |
|
| vfs.file.get | ファイルに関する情報を返します。 Windowsでサポートされているファイルタイプ:通常ファイル、ディレクトリ、シンボリックリンク |
|
| vfs.file.md5sum | ファイルのMD5チェックサム。 | |
| vfs.file.owner | ファイルの所有者を取得します。 | |
| vfs.file.regexp | ファイル内の文字列を取得します。 | |
| vfs.file.regmatch | ファイル内の文字列を検索します。 | |
| vfs.file.size | ファイルサイズ。 | |
| vfs.file.time | ファイルの時刻情報。 Windows XPでは vfs.file.time[file,change]がvfs.file.time[file,access]と等しい場合があります。 |
|
| vfs.fs.discovery | マウントされたファイルシステムの一覧(タイプとマウントオプション付き)。 Windowsでは{#FSLABEL}マクロがサポートされています。 |
|
| vfs.fs.get | マウントされたファイルシステムの一覧(タイプ、利用可能なディスク容量、inode統計、マウントオプション付き)。 Windowsでは{#FSLABEL}マクロがサポートされています。 |
|
| vfs.fs.size | ディスク容量(バイト単位または合計に対するパーセンテージ)。 | |
| vm.memory.size | メモリサイズ(バイト単位または合計に対するパーセンテージ)。 | 仮想メモリ |
| web.page.get | Webページの内容を取得します。 | Web監視 |
| web.page.perf | Webページ全体の読み込み時間。 | |
| web.page.regexp | Webページ上の文字列を検索します。 | |
| agent.hostmetadata | エージェントホストのメタデータ。 | Zabbix |
| agent.hostname | エージェントホスト名。 | |
| agent.ping | エージェントの可用性チェック。 | |
| agent.variant | Zabbixエージェントのバリアント(Zabbix agentまたはZabbix agent 2)。 | |
| agent.version | Zabbixエージェントのバージョン。 | |
| zabbix.stats | Zabbixサーバーまたはプロキシの内部メトリクスのセットをリモートで返します。 | |
| zabbix.stats | Zabbixサーバーまたはプロキシで遅延しているキュー内の監視アイテム数をリモートで返します。 |
Windows固有のアイテム
この表は、Windows Zabbixエージェントでのみサポートされているアイテムキーの詳細を示しています。
Windows固有のアイテムは、同様のエージェントアイテムの概算的な対応物である場合があります。たとえば、Windowsでサポートされているproc_infoは、Windowsでサポートされていないproc.memアイテムに大まかに対応します。
アイテムキーは、完全なアイテムキーの詳細へのリンクです。
| アイテムキー | 説明 | アイテムグループ |
|---|---|---|
| eventlog | Windowsイベントログの監視。 | ログ監視 |
| eventlog.count | Windowsイベントログ内の行数。 | |
| net.if.list | ネットワークインターフェースのリスト(インターフェースタイプ、ステータス、IPv4アドレス、説明を含む)。 | ネットワーク |
| perf_counter | 任意のWindowsパフォーマンスカウンターの値。 | パフォーマンスカウンター |
| perf_counter_en | 英語での任意のWindowsパフォーマンスカウンターの値。 | |
| perf_instance.discovery | Windowsパフォーマンスカウンターのオブジェクトインスタンスのリスト。 | |
| perf_instance_en.discovery | 英語のオブジェクト名を使用して検出されたWindowsパフォーマンスカウンターのオブジェクトインスタンスのリスト。 | |
| proc_info | 特定のプロセスに関するさまざまな情報。 | プロセス |
| registry.data | Windowsレジストリキー内の指定された値名のデータを返します。 | レジストリ |
| registry.get | 指定されたキーにあるWindowsレジストリの値またはキーのリスト。 | |
| service.discovery | Windowsサービスのリスト。 | サービス |
| service.info | サービスに関する情報。 | |
| services | サービスのリスト。 | |
| vm.vmemory.size | バイト単位または合計に対するパーセンテージでの仮想メモリサイズ。 | 仮想メモリ |
| wmi.get | WMIクエリを実行し、最初に選択されたオブジェクトを返します。 | WMI |
| wmi.getall | WMIクエリを実行し、全レスポンスを返します。 |
アイテムキーの詳細
山括弧のないパラメータは必須です。 山括弧 < > で囲まれたパラメータはオプションです。
eventlog[name,<regexp>,<severity>,<source>,<eventid>,<maxlines>,<mode>]
イベントログの監視。
戻り値:Log。
パラメータ:
- name - イベントログチャネルの名前(イベントビューアGUIのログ名);
- regexp - 必要なパターンを記述する正規表現(大文字小文字を区別);
- severity - 重大度を記述する正規表現(大文字小文字を区別しない)。
このパラメータは、次の値に基づく正規表現を受け入れます:"Information"、"Warning"、"Error"、"Critical"、"Verbose"(Windows Vista以降で実行時)。
- source - ソース識別子を記述する正規表現(大文字小文字を区別しない);
- eventid - イベント識別子を記述する正規表現(大文字小文字を区別);
- maxlines - エージェントがZabbixサーバーまたはプロキシに送信する1秒あたりの新しい行の最大数。
このパラメータは、zabbix_agentd.confの'MaxLinesPerSecond'の値を上書きします。
- mode - 可能な値:all(デフォルト)またはskip - 古いデータの処理をスキップします(新しく作成されたアイテムにのみ影響します)。
コメント:
- このアイテムはアクティブチェックとして設定する必要があります;
- エージェントは"Forwarded events"ログからイベントを送信できません;
- Windows Eventing 6.0がサポートされています;
- このアイテムに対して情報のタイプでLog以外を選択すると、ローカルタイムスタンプ、ログの重大度、ソース情報が失われます;
- ログ監視に関する追加情報も参照してください。
例:
eventlog[Application]
eventlog[Microsoft-Windows-Application-Experience/Program-Compatibility-Assistant]
eventlog[Security,,"Failure Audit",,^(529|680)$]
eventlog[System,,"Warning|Error"]
eventlog[System,,,,^1$]
eventlog[Windows PowerShell,,,,,,skip]
eventlog[System,,,,@TWOSHORT] #ここでは、カスタム正規表現`TWOSHORT`(*Result is TRUE*タイプとして定義され、式自体は`^1$|^70$`)が参照されています。
eventlog.count[name,<regexp>,<severity>,<source>,<eventid>,<maxproclines>,<mode>]
Windowsイベントログ内の行数を返します。
戻り値:整数。
パラメータ:
- name - イベントログチャネルの名前(イベントビューアーGUIのログ名);
- regexp - 必要なパターンを記述する正規表現(大文字小文字を区別);
- severity - 重大度を記述する正規表現(大文字小文字を区別しない)。
このパラメータは、次の値に基づく正規表現を受け入れます:"Information"、"Warning"、"Error"、"Critical"、"Verbose"(Windows Vista以降で実行時)。
- source - ソース識別子を記述する正規表現(大文字小文字を区別しない);
- eventid - イベント識別子を記述する正規表現(大文字小文字を区別);
- maxproclines - エージェントが1秒あたりに解析する新しい行の最大数(10000を超えることはできません)。
デフォルト値はzabbix_agentd.confの10*'MaxLinesPerSecond'です。
- mode - 可能な値:all(デフォルト)またはskip - 古いデータの処理をスキップ(新しく作成されたアイテムにのみ影響)。
コメント:
- アイテムはアクティブチェックとして設定する必要があります。
- エージェントは"Forwarded events"ログからイベントを送信できません。
- Windows Eventing 6.0をサポートしています。
- このアイテムに対して非ログ情報タイプを選択すると、ローカルタイムスタンプ、ログ重大度、ソース情報が失われます。
- ログ監視に関する追加情報も参照してください。
例:
eventlog.count[System,,"Warning|Error"]
eventlog.count[Windows PowerShell,,,,,,skip]
net.if.list
ネットワークインターフェースのリスト(インターフェースの種類、状態、IPv4アドレス、説明を含む)。
戻り値: テキスト。
コメント:
- マルチバイトのインターフェース名をサポート;
- 無効なインターフェースはリストされません;
- 一部のコンポーネントの有効化/無効化により、Windowsのインターフェース名の順序が変更される場合があります;
- 一部のWindowsバージョン(例: Server 2008)では、インターフェース名で非ASCII文字をサポートするために最新の更新プログラムが必要な場合があります。
perf_counter[counter,<interval>]
任意のWindowsパフォーマンスカウンターの値。
戻り値: 整数、浮動小数点数、文字列またはテキスト(リクエストによる)。
パラメータ:
- counter - カウンターへのパス;
- interval - 平均値を保存するための直近N秒。
intervalは1から900秒(含む)の間で指定し、デフォルト値は1。
コメント:
- このアイテムはUNCパスに従います。これはセキュリティリスクとなる可能性があります。
intervalは複数のサンプルが必要なカウンター(CPU使用率など)に使用されるため、チェックごとに直近"interval"秒の平均値を返します。- 利用可能なカウンターのリストを取得するにはPerformance Monitorを使用できます。
- 参考: Windowsパフォーマンスカウンター。
perf_counter_en[counter,<interval>]
英語で指定された任意のWindowsパフォーマンスカウンターの値を取得します。
戻り値:整数、浮動小数点数、文字列またはテキスト(リクエストに応じて異なります)。
パラメータ:
- counter - 英語で指定されたカウンターへのパス;
- interval - 平均値を保存するための直近N秒間。
intervalは1から900秒(含む)の間で指定する必要があり、デフォルト値は1です。
コメント:
- このアイテムはUNCパスに対応しており、セキュリティリスクとなる可能性があります;
intervalは複数のサンプルが必要なカウンター(CPU使用率など)に使用され、チェックごとに直近の"interval"秒間の平均値を返します;- このアイテムはWindows Server 2008/Vista以降でのみサポートされています;
- 英語の文字列のリストは、次のレジストリキーを参照することで確認できます:
HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Perflib\009。
perf_instance.discovery[object]
Windowsパフォーマンスカウンターのオブジェクトインスタンスのリスト。
ローレベルディスカバリで使用されます。
戻り値: JSONオブジェクト。
パラメータ:
- object - オブジェクト名(ローカライズ済み)。
perf_instance_en.discovery[object]
英語のオブジェクト名を使用して検出されたWindowsパフォーマンスカウンターのオブジェクトインスタンスのリスト。
ローレベルディスカバリで使用されます。
戻り値:JSONオブジェクト。
パラメータ:
- object - オブジェクト名(英語)。
proc_info[process,<attribute>,<type>]
特定のプロセスに関するさまざまな情報。
戻り値: Float。
パラメータ:
- process - プロセス名;
- attribute - 取得するプロセス属性;
- type - 表示タイプ(同じ名前のプロセスが複数存在する場合に有効)
コメント:
- サポートされている
attributeは以下の通り:
vmsize (デフォルト) - プロセスの仮想メモリサイズ(Kbyte単位)
wkset - プロセスのワーキングセットサイズ(プロセスが使用している物理メモリ量、Kbyte単位)
pf - ページフォールト数
ktime - プロセスのカーネル時間(ミリ秒単位)
utime - プロセスのユーザー時間(ミリ秒単位)
io_read_b - プロセスがI/O操作中に読み取ったバイト数
io_read_op - プロセスが実行した読み取り操作数
io_write_b - プロセスがI/O操作中に書き込んだバイト数
io_write_op - プロセスが実行した書き込み操作数
io_other_b - プロセスが読み書き以外の操作で転送したバイト数
io_other_op - プロセスが読み書き以外で実行したI/O操作数
gdiobj - プロセスが使用しているGDIオブジェクト数
userobj - プロセスが使用しているUSERオブジェクト数; - 有効な
typeは以下の通り:
avg (デフォルト) - <process>という名前のすべてのプロセスの平均値
min - <process>という名前のすべてのプロセスの最小値
max - <process>という名前のすべてのプロセスの最大値
sum - <process>という名前のすべてのプロセスの値の合計; - 64ビットシステムでは、このアイテムが正しく動作するために64ビットのZabbixエージェントが必要です。
例:
proc_info[iexplore.exe,wkset,sum] #すべてのInternet Explorerプロセスが消費している物理メモリ量を取得
proc_info[iexplore.exe,pf,avg] #Internet Explorerプロセスの平均ページフォールト数を取得
registry.data[key,<value name>]
Windowsレジストリキー内の指定された値名のデータを返します。
戻り値: 整数、文字列またはテキスト(値の型による)
パラメータ:
- key - ルートキーを含むレジストリキー; ルートの省略形(例: HKLM)が使用可能;
- value name - キー内のレジストリ値名(デフォルトは空文字列"")。 値名が指定されていない場合は、デフォルト値が返されます。
コメント:
- サポートされているルートの省略形:
HKCR - HKEY_CLASSES_ROOT
HKCC - HKEY_CURRENT_CONFIG
HKCU - HKEY_CURRENT_USER
HKCULS - HKEY_CURRENT_USER_LOCAL_SETTINGS
HKLM - HKEY_LOCAL_MACHINE
HKPD - HKEY_PERFORMANCE_DATA
HKPN - HKEY_PERFORMANCE_NLSTEXT
HKPT - HKEY_PERFORMANCE_TEXT
HKU - HKEY_USERS - スペースを含むキーは二重引用符で囲む必要があります。
例:
registry.data["HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\Windows Error Reporting"] #このキーのデフォルト値のデータを返す
registry.data["HKLM\SOFTWARE\Microsoft\Windows\Windows Error Reporting","EnableZip"] #このキーの"Enable Zip"という名前の値のデータを返す
registry.get[key,<mode>,<name regexp>]
指定したキーにあるWindowsレジストリの値またはキーのリスト。
戻り値: JSONオブジェクト。
パラメータ:
- key - ルートキーを含むレジストリキー; ルートの省略形(例: HKLM)が使用可能(省略形の全リストはregistry.data[]のコメントを参照);
- mode - 許可される値:
values(デフォルト)またはkeys; - name regexp - 名前が正規表現に一致する値のみをディスカバリ(デフォルト - すべての値をディスカバリ)。
modeがvaluesの場合のみ許可。
スペースを含むキーはダブルクォートで囲む必要があります。
例:
registry.get[HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall,values,"^DisplayName|DisplayVersion$"] #このキー内の"DisplayName"または"DisplayValue"という名前の値のデータを返します。
JSONにはキー、最後のサブキー、値の名前、値の型、値のデータの詳細が含まれます。
registry.get[HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall,values] #このキー内のすべての値のデータを返します。
JSONにはキー、最後のサブキー、値の名前、値の型、値のデータの詳細が含まれます。
registry.get[HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall,keys] #このキーのすべてのサブキーを返します。
JSONにはキーと最後のサブキーの詳細が含まれます。
service.discovery
Windowsサービスのリスト。
ローレベルディスカバリで使用します。
戻り値: JSONオブジェクト。
service.info[service,<param>]
サービスに関する情報。
戻り値: Integer - paramがstate、startupの場合; String - paramがdisplayname、path、userの場合; Text - paramがdescriptionの場合
stateの場合の詳細: 0 - 実行中、1 - 一時停止中、2 - 開始保留中、3 - 一時停止保留中、4 - 継続保留中、5 - 停止保留中、6 - 停止、7 - 不明、255 - そのようなサービスは存在しない
startupの場合の詳細: 0 - 自動、1 - 自動(遅延開始)、2 - 手動、3 - 無効、4 - 不明、5 - 自動トリガースタート、6 - 自動遅延トリガースタート、7 - 手動トリガースタート
パラメータ:
- service - MMCサービススナップインで表示される実際のサービス名または表示名
- param - state (デフォルト)、displayname、path、user、startup、またはdescription
コメント:
service.info[service,state]やservice.info[service]のようなアイテムは同じ情報を返しますparamがstateの場合のみ、存在しないサービスに対して値(255)を返します
例:
service.info[SNMPTRAP] - SNMPTRAPサービスの状態
service.info[SNMP Trap] - 表示名を指定した同じサービスの状態
service.info[EventLog,startup] - EventLogサービスの起動タイプ
services[<type>,<state>,<exclude>]
サービスの一覧。
戻り値: 0 - 空の場合; Text - サービスのリスト(改行で区切られる)。
パラメータ:
- type - all (デフォルト), automatic, manual, または disabled;
- state - all (デフォルト), stopped, started, start_pending, stop_pending, running, continue_pending, pause_pending, または paused;
- exclude - 結果から除外するサービス。 除外するサービスはダブルクォーテーションで囲み、カンマで区切り、スペースは入れません。
例:
services[,started] #起動しているサービスのリストを返します;
services[automatic, stopped] #起動しているべきなのに停止しているサービスのリストを返します;
services[automatic, stopped, "service1,service2,service3"] #起動しているべきなのに停止しているサービスのリストを返します。ただし、"service1"、"service2"、"service3"という名前のサービスは除外します
vm.vmemory.size[<type>]
バイト単位または合計からのパーセンテージでの仮想メモリサイズ。
戻り値: バイトの場合は整数、パーセンテージの場合は浮動小数点数。
パラメータ:
- type - 指定可能な値: available (利用可能な仮想メモリ), pavailable (利用可能な仮想メモリ、パーセンテージ), pused (使用中の仮想メモリ、パーセンテージ), total (合計仮想メモリ、デフォルト), used (使用中の仮想メモリ)
コメント:
- 仮想メモリ統計の監視は以下に基づきます:
- Windows上の合計仮想メモリ(物理メモリ合計 + ページファイルサイズ);
- Zabbixエージェントがコミットできる最大メモリ量;
- システムまたはZabbixエージェントの現在のコミット済みメモリ制限(小さい方)。
- Windows上の合計仮想メモリ(物理メモリ合計 + ページファイルサイズ);
例:
vm.vmemory.size[pavailable] #利用可能な仮想メモリをパーセンテージで返す
wmi.get[<namespace>,<query>]
WMIクエリを実行し、最初に選択されたオブジェクトを返します。
戻り値: 整数、浮動小数点数、文字列またはテキスト(リクエストによる)。
パラメータ:
- namespace - WMI名前空間;
- query - 単一オブジェクトを返すWMIクエリ。
WMIクエリはWQLで実行されます。
例:
wmi.get[root\cimv2,select status from Win32_DiskDrive where Name like '%PHYSICALDRIVE0%'] #最初の物理ディスクのステータスを返す
wmi.getall[<namespace>,<query>]
WMIクエリを実行し、応答全体を返します。
ローレベルディスカバリに使用できます。
戻り値: JSONオブジェクト
パラメータ:
- namespace - WMI名前空間;
- query - WMIクエリ。
コメント:
例:
wmi.getall[root\cimv2,select * from Win32_DiskDrive where Name like '%PHYSICALDRIVE%'] #物理ディスクのステータス情報を返す
Windowsサービスの監視
このチュートリアルでは、Windowsサービスの監視を設定する手順を説明します。 Zabbixサーバーとエージェントが設定され、稼働していることを前提としています。
ステップ1
サービス名を取得します。
MMCサービススナップインに移動し、サービスのプロパティを表示することで、サービス名を取得できます。 全般タブに「サービス名」というフィールドが表示されます。 その後に続く値が、監視用のアイテムを設定する際に使用する名前です。 たとえば、「workstation」サービスを監視したい場合、サービス名はlanmanworkstationとなります。
ステップ2
サービスの監視のためにアイテムを設定します。
アイテム service.info[service,<param>] は、特定のサービスに関する情報を取得します。
必要な情報に応じて、param オプションを指定します。param には displayname、state、path、user、startup、description のいずれかの値を指定できます。
param を指定しない場合(service.info[service])、デフォルト値は state です。
返される値の型は、選択した param によって異なります。state および startup の場合は整数、displayname、path、user の場合は文字列、description の場合はテキストです。
例:
- キー:
service.info[lanmanworkstation] - 情報の型: 数値(整数)
アイテム service.info[lanmanworkstation] は、サービスの状態を数値として取得します。
フロントエンドで数値をテキスト表現にマッピングするには(例: "0" を "Running"、"1" を "Paused" など)、アイテムが設定されているホストで値のマッピングを設定できます。
これを行うには、Windows services by Zabbix agent または Windows services by Zabbix agent active テンプレートをホストにリンクするか、または該当テンプレートで設定されている Windows service state の値のマッピングを基に、ホストで新しい値のマッピングを設定します。
なお、上記の両テンプレートには、サービスを自動的に検出するディスカバリルールが設定されています。 これを望まない場合は、テンプレートをホストにリンクした後、ホストレベルでディスカバリルールを無効化できます。
Windowsサービスのディスカバリ
ローレベルディスカバリは、コンピュータ上のさまざまなエンティティのアイテム、トリガー、グラフを自動的に作成する方法を提供します。 Zabbixは、サービスの正確な名前を知る必要や、各サービスごとに手動でアイテムを作成することなく、マシン上のWindowsサービスの監視を自動的に開始できます。 フィルタを使用して、関心のあるサービスのみの実際のアイテム、トリガー、グラフを生成することができます。