設定パラメーター: Zabbix エージェント (Windows)

概要

設定パラメータを使用すると、Windows 上での Zabbix エージェントの動作をカスタマイズできます。

パラメータの値は、設定ファイル (zabbix_agentd.win.conf) に指定します。すべてのパラメータは、パラメータが必須であると明記されていない限り、任意です。

このページの構成は次のとおりです。

  • パラメータ概要(パラメータの詳細を表示するには、名前をクリックします)
  • パラメータ詳細
Parameter Description
Alias アイテムキーの別名を設定します。
AllowKey パターンに一致するアイテムキーの実行を許可します。
BufferSend バッファーから Zabbix サーバー/プロキシへ値を送信する頻度を設定します。
BufferSize メモリーバッファー内の値の最大数を設定します。
DebugLevel デバッグレベルを設定します。
DenyKey パターンに一致するアイテムキーの実行を拒否します。
EnableRemoteCommands Zabbix サーバーからのリモートコマンドを許可します。
HeartbeatFrequency ハートビートメッセージの送信頻度を秒単位で設定します。
HostInterface ホストインターフェースを指定します。
HostInterfaceItem ホストインターフェースを取得するためのアイテムを指定します。
HostMetadata ホストメタデータを指定します。
HostMetadataItem ホストメタデータを取得するための Zabbix エージェントのアイテムを指定します。
Hostname ホスト名を指定します。
HostnameItem ホスト名を取得するための Zabbix エージェントのアイテムを指定します。
Include 設定ファイルに含めるディレクトリまたは個別のファイルを指定します。
ListenBacklog TCP キュー内の保留中接続の最大数を設定します。
ListenIP サーバー/プロキシからの接続を受け付けるエージェントの待ち受け IP アドレスを指定します。
ListenPort エージェントの待ち受けポートを指定します。
LogFile エージェントのログファイルを指定します。
LogFileSize ログファイルの最大サイズを設定します。
LogRemoteCommands 実行されたシェルコマンドを警告としてログに記録するようにします。
LogType ログ出力タイプを指定します。
MaxLinesPerSecond loglogrt、または eventlog のアクティブチェックを処理する際に、Zabbix サーバー/プロキシへ送信する 1 秒あたりの新規行数の最大値を設定します。
PerfCounter 新しいパラメータ <parameter_name> を定義します。これは、指定した期間 <period>(秒)におけるシステムパフォーマンスカウンター <perf_counter_path> の平均値です。
PerfCounterEn 新しいパラメータ <parameter_name> を定義します。これは、指定した期間 <period>(秒)におけるシステムパフォーマンスカウンター <perf_counter_path> の平均値です。PerfCounter と比較して、perfcounter のパスは英語である必要があります。
RefreshActiveChecks アクティブチェック一覧を更新する頻度を指定します。
Server Zabbix サーバー/プロキシの IP アドレスまたは DNS 名を指定します。
ServerActive アクティブチェックを取得するための Zabbix サーバー/プロキシのアドレスまたはクラスタ構成を指定します。
SourceIP 送信元 IP アドレスを指定します。
StartAgents パッシブチェックを処理するための zabbix_agentd の事前フォーク済みインスタンス数を設定します。
Timeout Zabbix サーバーまたはプロキシとの接続確立およびデータ交換を待機する時間を秒単位で指定します。
TLSAccept 受信接続に必要な暗号化レベルを指定します。
TLSCAFile Zabbix コンポーネント間の暗号化通信で使用する、ピア証明書検証用の最上位 CA 証明書を含むファイルの完全パス名を指定します。
TLSCertFile Zabbix コンポーネント間の暗号化通信で使用する、エージェント証明書または証明書チェーンを含むファイルの完全パス名を指定します。
TLSConnect Zabbix サーバーまたはプロキシへの接続に必要な暗号化レベルを指定します。
TLSCRLFile 失効した証明書を含むファイルの完全パス名を指定します。このパラメータは、Zabbix コンポーネント間の暗号化通信で使用されます。
TLSKeyFile Zabbix コンポーネント間の暗号化通信で使用する、エージェント秘密鍵を含むファイルの完全パス名を指定します。
TLSPSKFile Zabbix サーバーとの暗号化通信で使用する、エージェントの事前共有鍵を含むファイルの完全パス名を指定します。
TLSPSKIdentity Zabbix サーバーとの暗号化通信で使用する、事前共有鍵の識別文字列を指定します。
TLSServerCertIssuer 許可するサーバー(プロキシ)証明書の発行者を指定します。
TLSServerCertSubject 許可するサーバー(プロキシ)証明書のサブジェクトを指定します。
UnsafeUserParameters ユーザー定義パラメータの引数として、すべての文字を渡せるようにします。
UserParameter 監視するユーザー定義パラメータを指定します。
UserParameterDir UserParameter コマンドの既定の検索パスを指定します。

注意事項:

  • 既定値はデーモンの既定値を反映しており、配布される設定ファイル内の値ではありません。
  • 値は 環境変数 をサポートします。
  • Zabbix がサポートする設定ファイルのエンコーディングは UTF-8 のみで、BOM は含められません。
  • "\#" で始まるコメントは、行頭でのみサポートされます。

パラメーターの詳細

エイリアス

アイテムキーにエイリアスを設定します。 長く複雑なアイテムキーを、より短く簡潔なものに置き換えるために使用できます。
複数の Alias パラメータを指定できます。 同じ Alias キーを持つ複数のパラメータは許可されません。
異なる Alias キーが同じアイテムキーを参照することはできます。
エイリアスは HostMetadataItem では使用できますが、HostnameItem または PerfCounter パラメータでは使用できません。

例 1: サーバーからページングファイル使用率をパーセントで取得する。

Alias=pg_usage:perf_counter[\Paging File(_Total)\% Usage]

これで、短縮キー pg_usage を使用してデータを取得できます。

例 2: デフォルトおよびカスタムパラメータで CPU 負荷を取得する。

Alias=cpu.load:system.cpu.load
Alias=cpu.load[*]:system.cpu.load[*]

これにより、cpu.load キーを使用してデフォルトパラメータの CPU 負荷を取得できるほか、cpu.load[percpu,avg15] を使用して CPU 負荷の特定データを取得できます。

例 3: 同じ検出アイテムを処理する複数の low-level discovery ルールを実行する。

Alias=vfs.fs.discovery[*]:vfs.fs.discovery

これで、各ルールに異なるパラメータを指定して vfs.fs.discovery を使用する複数の検出ルールを設定できます。たとえば、vfs.fs.discovery[foo]vfs.fs.discovery[bar] などです。

AllowKey

パターンに一致するアイテムキーの実行を許可します。 キーのパターンは、任意の文字数に一致する "*" 文字をサポートするワイルドカード式です。
複数のキー一致ルールを DenyKey と組み合わせて定義できます。 パラメーターは、記載順に1つずつ処理されます。 関連項目: エージェントチェックの制限

BufferSend

バッファーから Zabbix サーバー/プロキシへ値を送信する頻度を設定します(秒)。

デフォルト: 5
範囲: 1-3600

BufferSize

メモリーバッファー内の値の最大数を設定します。
バッファーがいっぱいになると、エージェントは収集したすべてのデータを Zabbix サーバーまたはプロキシに送信します。

デフォルト: 100
範囲: 2-65535

DebugLevel

デバッグレベルを設定します:
0 - Zabbixプロセスの開始と停止に関する基本情報
1 - 重大な情報;
2 - エラー情報;
3 - 警告;
4 - デバッグ用(大量の情報を出力します);
5 - 拡張デバッグ用(さらに多くの情報を出力します)。

デフォルト: 3
範囲: 0-5

DenyKey

パターンに一致するアイテムキーの実行を拒否します。 キーのパターンは、任意の文字列に一致する "*" 文字をサポートするワイルドカード式です。
複数のキー一致ルールを AllowKey と組み合わせて定義できます。 パラメータは、記載順に1つずつ処理されます。 関連項目: エージェントチェックの制限

EnableRemoteCommands

Zabbixサーバーからのリモートコマンドを許可します。
このパラメータは非推奨です。代わりに AllowKey=system.run[*] または DenyKey=system.run[*] を使用してください。
これは値に応じて AllowKey/DenyKey パラメータの内部エイリアスです。
0 - DenyKey=system.run[*]
1 - AllowKey=system.run[*]

デフォルト: 0
値: 0 - 許可しない、1 - 許可する

HeartbeatFrequency

ハートビートメッセージの送信間隔を秒単位で設定します。 アクティブチェックの可用性を監視するために使用されます。
0 - ハートビートメッセージを無効にします。

デフォルト: 60
範囲: 0-3600

HostInterface

ホスト 自動登録 時に使用するホストインターフェース(IPアドレスまたはDNS名)を指定します。 この値は、新しく作成されるホストのインターフェースを設定するために使用され、IPアドレスまたはDNSアドレスのいずれかを明示的に設定できます。 詳細については、DNSをデフォルトのインターフェースとして使用する を参照してください。

定義されていない場合、この値は HostInterfaceItem から取得されます。

この値が255文字を超えると、エージェントはエラーを出力して起動しません。

範囲: 0-255文字

HostInterfaceItem

ホストの自動登録時にホストインターフェース(IPアドレスまたはDNS名)を判定するためのアイテムを指定します。 この値は、HostInterface が定義されていない場合にのみ使用されます。 詳細は、DNSをデフォルトのインターフェースとして使用するを参照してください。

自動登録リクエスト中、指定したアイテムが返す値が255文字の上限を超える場合、エージェントは警告メッセージをログに記録します。

system.run[] アイテムは、AllowKey/DenyKey の設定に関係なくサポートされます。

HostMetadata

ホスト 自動登録(アクティブ エージェント)中にホストを識別または区別するために使用する metadata を指定します。 HostMetadata により、hostname 以外の基準でもホストを区別できます。

未定義の場合、値は HostMetadataItem から取得されます。

指定した値が 2034 バイトを超える場合、または UTF-8 文字列でない場合、エージェントはエラーを出力して起動しません。 パラメータが IP アドレスまたは DNS 名を期待する場合、UTF-8 としては有効でも IP アドレスまたは DNS 名として無効な値は拒否され、無効として報告されます。

複数行の metadata はサポートされていません。出力は最初の改行で切り詰められます。

範囲: 0-2034 バイト

HostMetadataItem

ホストメタデータ を取得するための Zabbix エージェントアイテムを指定します。
このオプションは、HostMetadata が定義されていない場合にのみ使用されます。

HostMetadataItem の値は各 自動登録 の試行時に取得され、ホストの自動登録処理(アクティブ エージェント)でのみ使用されます。
HostMetadataItem を使用すると、ホスト名以外の情報でホストを識別できます。

ユーザー定義パラメータ、パフォーマンスカウンター、エイリアスがサポートされています。
system.run[] アイテムは、AllowKey/DenyKey の設定に関係なくサポートされています。

自動登録リクエスト中、指定したアイテムが返す値が 65535 UTF-8 コードポイントの上限を超える場合、エージェントは警告メッセージをログに記録します。
アイテムが返す値は UTF-8 文字列でなければならず、そうでない場合は無視されます。
パラメータが IP アドレスまたは DNS 名を期待する場合、UTF-8 としては有効でも IP アドレスまたは DNS 名として無効な値は拒否され、無効として報告されます。

複数行のメタデータはサポートされていません。出力は最初の改行で切り捨てられます。

ホスト名

一意で、大文字小文字を区別するホスト名を指定します。カンマ区切りのリストです。
アクティブチェックに必要であり、サーバーで設定されたホスト名と一致している必要があります。 未定義の場合、値は HostnameItem から取得されます。
使用可能な文字: 英数字、'.'、' '、'_'、'-'。 最大長: ホスト名ごとに128文字、行全体で2048文字。

デフォルト: HostnameItem により設定されます

HostnameItem

ホスト名を取得するための Zabbix エージェント アイテムを指定します。
このオプションは、Hostname が定義されていない場合にのみ使用されます。
User parameters、performance counters、aliases はサポートされていませんが、system.run[] アイテムは AllowKey/DenyKey の値に関係なくサポートされます。
詳細は、より詳しい説明も参照してください。

Default: system.hostname

Include

設定ファイルに含めるディレクトリまたは個別のファイルを指定します(Zabbix エージェントが Windows MSI インストーラーパッケージを使用してインストールされている場合、既定では C:\Program Files\Zabbix Agent にあります。Zabbix エージェントが zip アーカイブとしてインストールされている場合は、インストール時に指定したフォルダーにあります)。 含まれるすべてのファイルは正しい構文である必要があります。そうでない場合、エージェントは起動しません。
指定したディレクトリ内の関連ファイルのみを含めるには、パターン一致のためにアスタリスクのワイルドカード文字を使用できます。
制限については、special notes を参照してください。

例:

Include=C:\Program Files\Zabbix Agent\zabbix_agentd.d\*.conf
ListenBacklog

TCPキュー内で保留中の接続の最大数を設定します。
デフォルト値はハードコードされた定数で、システムに依存します。
サポートされる最大値もシステムに依存し、値が高すぎる場合は「実装で指定された最大値」に黙って切り捨てられることがあります。

デフォルト: SOMAXCONN
範囲: 0 - INT_MAX

ListenIP

サーバー/プロキシからの接続に対するエージェントの待ち受けIPアドレスを指定します。カンマ区切りのリストです。

デフォルト: 0.0.0.0

ListenPort

サーバー/プロキシからの接続を受け付けるエージェントの待受ポートを指定します。

デフォルト: 10050
範囲: 1024-32767

LogFile

エージェントのログファイルを指定します。

デフォルト: c:\zabbix_agentd.log
必須: LogType が file に設定されている場合は Yes、それ以外は no

LogFileSize

最大ログファイルサイズを MB 単位で設定します。
0 - 自動ログローテーションを無効にします。
: ログファイルサイズの上限に達し、何らかの理由でファイルローテーションに失敗した場合、既存のログファイルは切り詰められ、新規に作成されます。

デフォルト: 1
範囲: 0-1024

LogRemoteCommands

実行されたシェルコマンドを警告としてログに記録します。
コマンドは、リモートで実行された場合にのみログに記録されます。
system.run[] が HostMetadataItem、HostInterfaceItem、または HostnameItem パラメータによってローカルで起動された場合、ログエントリは作成されません。

デフォルト: 0
値: 0 - 無効、1 - 有効

LogType

ログ出力の種類を指定します:
file - LogFile パラメータで指定されたファイルにログを書き込みます;
system - Windows イベントログにログを書き込みます;
console - 標準出力にログを書き込みます。

デフォルト: file

MaxLinesPerSecond

loglogrt、または eventlog のアクティブチェックを処理する際に、Zabbix サーバー/プロキシへ送信する 1 秒あたりの新しい行の最大数を設定します。
指定した値は、loglogrt、または eventlog のアイテムキーで指定された 'maxlines' パラメータによって上書きされます。
: Zabbix は、ログアイテム内で必要な文字列を検索するために、MaxLinesPerSecond で設定された値の 10 倍の新しい行を処理します。

デフォルト: 20
範囲: 1-1000

PerfCounter

指定した時間期間 <period>(秒)におけるシステム パフォーマンス カウンター <perf_counter_path> の平均値となる新しいパラメーター <parameter_name> を定義します。
構文: <parameter_name>,"<perf_counter_path>",<period>

たとえば、直近 1 分間の 1 秒あたりのプロセッサ割り込み数の平均を取得したい場合は、次のように新しいパラメーター "interrupts" を定義できます。

PerfCounter = interrupts,"\Processor(0)\Interrupts/sec",60

パフォーマンス カウンターのパスを囲む二重引用符に注意してください。 パラメーター名(interrupts)は、アイテムを作成する際のアイテムキーとして使用します。 平均値の計算に使用するサンプルは、1 秒ごとに取得されます。
Windows で利用可能なすべてのパフォーマンス カウンターの一覧を取得するには、"typeperf -qx" を実行してください。

PerfCounterEn

新しいパラメーター <parameter_name> を定義します。これは、指定した時間期間 <period>(秒単位)におけるシステム パフォーマンス カウンター <perf_counter_path> の平均値です。
PerfCounter と比較して、perfcounter のパスは英語で指定する必要があります。
Windows Server 2008/Vista 以降でのみサポートされます。
構文: <parameter_name>,"<perf_counter_path>",<period>

たとえば、直近 1 分間の 1 秒あたりのプロセッサー割り込みの平均回数を取得したい場合は、次のように新しいパラメーター "interrupts" を定義できます。

PerfCounterEn = interrupts,"\Processor(0)\Interrupts/sec",60

パフォーマンス カウンターのパスは二重引用符で囲む必要があることに注意してください。
パラメーター名(interrupts)は、アイテムを作成する際のアイテムキーとして使用します。
平均値の計算に使用するサンプルは 1 秒ごとに取得されます。
英語の文字列の一覧は、次のレジストリキーを参照してください: HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Perflib\009

RefreshActiveChecks

アクティブチェックの一覧を更新する頻度を秒単位で指定します。
アクティブチェックの更新に失敗した場合、次回の更新は 60 秒後に試行されることに注意してください。

デフォルト: 5
範囲: 1-86400

サーバー

Zabbixサーバー/プロキシのIPアドレス、または必要に応じてCIDR表記のIPアドレス、あるいはDNS名を指定します。カンマ区切りのリストです。
受信接続は、ここに一覧表示されたホストからのみ受け入れられます。 IPv6サポートが有効な場合、'127.0.0.1'、'::127.0.0.1'、'::ffff:127.0.0.1' は同等に扱われ、'::/0' は任意のIPv4またはIPv6アドレスを許可します。 '0.0.0.0/0' は任意のIPv4アドレスを許可するために使用できます。 "IPv4-compatible IPv6 addresses"(0000::/96 プレフィックス)は RFC4291 でサポートされていますが、非推奨であることに注意してください。 スペースは使用できます。

例:

Server=127.0.0.1,192.168.1.0/24,::1,2001:db8::/32,zabbix.example.com

必須: はい。StartAgents が明示的に 0 に設定されていない場合

ServerActive

アクティブチェックを取得するための Zabbix サーバー/プロキシのアドレス、またはクラスタ構成を指定します。
サーバー/プロキシのアドレスは IP アドレスまたは DNS 名で、必要に応じてコロンで区切ったポートを指定できます。
クラスタ構成は、セミコロンで区切った 1 つ以上のサーバーまたはプロキシグループのメンバーアドレスです。 複数の Zabbix サーバー/クラスタおよび Zabbix プロキシを、カンマ区切りで指定できます。 プロキシグループを使用しない場合、各 Zabbix サーバー/クラスタから 1 つを超える Zabbix プロキシを指定しないでください。 Zabbix プロキシを指定した場合、そのプロキシに対応する Zabbix サーバー/クラスタは指定しないでください。
カンマ区切りの複数アドレスを指定して、複数の独立した Zabbix サーバーを並列に使用できます。 スペースも使用できます。
ポートを指定しない場合は、デフォルトのポートが使用されます。
IPv6 アドレスでは、そのホストのポートを指定する場合、角括弧で囲む必要があります。 ポートを指定しない場合、IPv6 アドレスの角括弧は省略可能です。
このパラメータを指定しない場合、アクティブチェックは無効になります。

Zabbix プロキシの例:

ServerActive=127.0.0.1:10051

Zabbix プロキシグループの例:

ServerActive=proxy1.example.com;proxy2.example.com;proxy3.example.com;proxy4.example.com;proxy5.example.com

複数サーバーの例:

ServerActive=127.0.0.1:20051,zabbix.domain,[::1]:30051,::1,[12fc::1]

高可用性の例:

ServerActive=zabbix.cluster.node1;zabbix.cluster.node2:20051;zabbix.cluster.node3

2 つのクラスタと 1 つのサーバーを使用した高可用性の例:

ServerActive=zabbix.cluster.node1;zabbix.cluster.node2:20051,zabbix.cluster2.node1;zabbix.cluster2.node2,zabbix.domain

範囲: ServerActive に一覧表示されるアクティブサーバーの数と、StartAgents で指定されたパッシブチェック用の事前フォーク済みインスタンス数の合計は 64 未満でなければなりません。

SourceIP

次の接続に使用する送信元 IP アドレスを指定します。

  • Zabbix サーバーまたは Zabbix プロキシへの送信接続
  • 一部のアイテム(web.page.get、net.tcp.port など)を実行する際の接続の確立
StartAgents

受動チェックを処理するために、事前に fork された zabbix_agentd のインスタンス数を設定します。
0 に設定すると、受動チェックは無効になり、エージェントは TCP ポートで待ち受けしなくなります。

デフォルト: 10
範囲: 0-100 (*)

タイムアウト

Zabbix プロキシまたはサーバーとの接続を確立し、データを交換するまでに待機する時間を秒単位で指定します。

このパラメーターは、次のような各種通信処理の継続時間を定義します。

  • Zabbix サーバーからの応答を待機する;
  • アイテム設定要求や active checks におけるアイテムデータを含む、Zabbix サーバーへの要求送信;
  • logfile または Windows イベントログ監視を通じたログデータの取得;
  • ハートビートメッセージの送信;
  • vfs.* チェックの最大継続時間;
  • Zabbix エージェントモジュールで使用される;
  • バージョン 7.0 より古いサーバーまたはプロキシがタイムアウトなしでチェックを送信する場合のフォールバックとして機能する。

このタイムアウトは、Webインターフェースでタイムアウト設定を構成できるエージェントチェック(全体、プロキシ、またはアイテムごとのレベル)には 使用されません

デフォルト: 3
範囲: 1-30

TLSAccept

受信接続に必要な暗号化レベルを指定します。
パッシブチェックで使用されます。
複数の値をカンマ区切りで指定できます。
unencrypted - 暗号化なしの接続を受け入れます(デフォルト)
psk - TLS と事前共有キー(PSK)を使用した接続を受け入れます
cert - TLS と証明書を使用した接続を受け入れます

必須: はい。TLS証明書または PSK パラメータが定義されている場合(unencrypted 接続であっても)は必須です。それ以外の場合は不要です

TLSCAFile

Zabbixコンポーネント間の暗号化通信で使用される、ピア証明書の検証用に最上位CA証明書を含むファイルのフルパスを指定します。

TLSCertFile

Zabbixコンポーネントとの暗号化通信に使用する、エージェントの証明書または証明書チェーンを含むファイルの完全なパス名を指定します。

TLSConnect

Zabbixサーバーまたはプロキシへのエージェント接続に必要な暗号化レベルを指定します。
アクティブチェックで使用されます。
指定できる値は1つだけです:
unencrypted - 暗号化なしで接続します(デフォルト)
psk - TLSと事前共有鍵(PSK)を使用して接続します
cert - TLSと証明書を使用して接続します

必須: はい。TLS証明書またはPSKパラメータが定義されている場合(unencrypted 接続の場合でも)は必須です。それ以外の場合はいいえ

TLSCRLFile

失効した証明書を含むファイルのフルパスを指定します。 このパラメーターは、Zabbixコンポーネント間の暗号化通信に使用されます。

TLSKeyFile

エージェントの秘密鍵を含むファイルの完全なパス名を指定します。これは、Zabbixコンポーネント間の暗号化通信に使用されます。

TLSPSKFile

サーバーとの暗号化通信に使用される、エージェントの事前共有鍵を含むファイルのフルパス名を指定します。

TLSPSKIdentity

Zabbixサーバーとの暗号化通信に使用する、事前共有鍵のID文字列を指定します。

TLSServerCertIssuer

許可するサーバー(プロキシ)証明書の発行者を指定します。

TLSServerCertSubject

許可するサーバー(プロキシ)証明書のサブジェクトを指定します。

UnsafeUserParameters

ユーザー定義パラメータの引数に、すべての文字を渡せるようにします。 次の文字は使用できません: \ ' " ` * ? [ ] { } \~ $ ! & ; ( ) < > | # @ %
さらに、改行文字も使用できません。

デフォルト: 0
値: 0 - 許可しない、1 - 許可する

UserParameter

監視するユーザー定義パラメータを指定します。 ユーザー定義パラメータは複数指定できます。
形式: UserParameter=<key>,<shell command>
なお、シェルコマンドは空文字列または EOL のみを返してはなりません。 UserParameterDir パラメータが指定されている場合、シェルコマンドには相対パスを使用できます。

例:

UserParameter=system.test,dir /b | find /c /v ""
UserParameter=check_cpu,.\custom\_script.bat
UserParameterDir

UserParameter コマンドのデフォルト検索パスを指定します。 使用すると、エージェントはコマンドを実行する前に、作業ディレクトリをここで指定したディレクトリに変更します。 これにより、UserParameter コマンドでは完全なパスの代わりに、相対的な ./ プレフィックスを使用できます。 指定できるエントリは 1 つだけです。

例:

UserParameterDir=C:\opt\myscripts