アイテムがチェックされる時間に関するカスタムルールを作成することができます。 そのための2つの方法は、デフォルトの更新間隔を再定義できるフレキシブル間隔と、アイテムチェックを特定の時刻または一連の時刻に実行できるスケジューリングです。
柔軟な間隔を使用すると、特定の期間にデフォルトの更新間隔を再定義できます。 柔軟な間隔は、間隔と期間で定義されます。
複数の柔軟な間隔が重複している場合、重複期間には最小の間隔値が使用されます。 重複する柔軟な間隔の最小値が「0」の場合、ポーリングは行われません。 柔軟な間隔の外では、デフォルトの更新間隔が使用されます。
柔軟な間隔が期間の長さと等しい場合、アイテムは正確に1回チェックされます。 柔軟な間隔が期間よりも大きい場合、アイテムは1回チェックされるか、まったくチェックされない場合があります(このような設定は推奨されません)。 柔軟な間隔が期間よりも短い場合、アイテムは少なくとも1回チェックされます。
柔軟な間隔が「0」に設定されている場合、柔軟な間隔の期間中はアイテムはポーリングされず、期間が終了するとデフォルトの更新間隔に従ってポーリングが再開されます。 例:
| 間隔 | 期間 | 説明 |
|---|---|---|
| 10 | 1-5,09:00-18:00 | アイテムは営業時間中、10秒ごとにチェックされます。 |
| 0 | 1-7,00:00-7:00 | アイテムは夜間はチェックされません。 |
| 0 | 7-7,00:00-24:00 | アイテムは日曜日はチェックされません。 |
| 60 | 1-7,12:00-12:01 | アイテムは毎日12:00にチェックされます。これはスケジュールされたチェックの回避策として使用されていましたが、このようなチェックにはスケジューリング間隔を使用することを推奨します。 |
スケジューリング間隔は、特定の時刻にアイテムをチェックするために使用されます。 柔軟な間隔がデフォルトのアイテム更新間隔を再定義するために設計されているのに対し、スケジューリング間隔は独立したチェックスケジュールを指定するために使用され、並行して実行されます。
スケジューリング間隔は、md<filter>wd<filter>h<filter>m<filter>s<filter> の形式で定義されます。ここで:
<filter> は、その接頭辞(日、時間、分、秒)に対する値を指定するために使用され、[<from>[-<to>]][/<step>][,<filter>] の形式で定義されます。ここで:
<from> と <to> は一致する値の範囲(含む)を定義します。 <to> が省略された場合、フィルタは <from> - <from> の範囲に一致します。 <from> も省略された場合、フィルタはすべての可能な値に一致します。<step> は、範囲内で値をスキップする間隔を定義します。 デフォルトでは <step> の値は1で、定義された範囲のすべての値に一致することを意味します。フィルタの定義は省略可能ですが、少なくとも1つのフィルタを使用する必要があります。 フィルタには、範囲または <step> の値のいずれかを定義する必要があります。
下位レベルのフィルタが定義されていない場合、空のフィルタは '0' に一致し、そうでない場合はすべての可能な値に一致します。 たとえば、時間フィルタが省略された場合、分および秒フィルタも省略されていれば '0' 時間のみが一致し、そうでなければ空の時間フィルタはすべての時間値に一致します。
それぞれのフィルタ接頭辞に対する有効な <from> および <to> の値は次のとおりです:
| Prefix | Description | <from> | <to> |
|---|---|---|---|
| md | 月の日 | 1-31 | 1-31 |
| wd | 週の日 | 1-7 | 1-7 |
| h | 時間 | 0-23 | 0-23 |
| m | 分 | 0-59 | 0-59 |
| s | 秒 | 0-59 | 0-59 |
<from> の値は <to> の値以下でなければなりません。 <step> の値は1以上、<to> - <from> 以下でなければなりません。
1桁の月の日、時間、分、秒の値には0を付けることができます。 たとえば、md01-31 や h/02 は有効な間隔ですが、md01-031 や wd01-07 は無効です。
Zabbixフロントエンドでは、複数のスケジューリング間隔は別々の行に入力します。 Zabbix APIでは、セミコロン ; で区切って1つの文字列に連結されます。
時刻が複数の間隔に一致した場合でも、1回だけ実行されます。 たとえば、wd1h9;h9 は月曜日の午前9時に1回だけ実行されます。
例:
| Interval | Will be executed |
|---|---|
| m0-59 | 毎分 |
| h9-17/2 | 9:00から2時間ごと(9:00、11:00 ...) |
| m0,30 または m/30 | 毎時 hh:00 および hh:30 |
| m0,5,10,15,20,25,30,35,40,45,50,55 または m/5 | 5分ごと |
| wd1-5h9 | 月曜日から金曜日の9:00 |
| wd1-5h9-18 | 月曜日から金曜日の9:00,10:00,...,18:00 |
| h9,10,11 または h9-11 | 毎日9:00、10:00、11:00 |
| md1h9m30 | 毎月1日の9:30 |
| md1wd1h9m30 | 毎月1日が月曜日の場合の9:30 |
| h9m/30 | 毎日9:00、9:30 |
| h9m0-59/30 | 毎日9:00、9:30 |
| h9,10m/30 | 毎日9:00、9:30、10:00、10:30 |
| h9-10m30 | 毎日9:30、10:30 |
| h9m10-40/30 | 毎日9:10、9:40 |
| h9,10m10-40/30 | 毎日9:10、9:40、10:10、10:40 |
| h9-10m10-40/30 | 毎日9:10、9:40、10:10、10:40 |
| h9m10-40 | 毎日9:10、9:11、9:12、... 9:40 |
| h9m10-40/1 | 毎日9:10、9:11、9:12、... 9:40 |
| h9-12,15 | 毎日9:00、10:00、11:00、12:00、15:00 |
| h9-12,15m0 | 毎日9:00、10:00、11:00、12:00、15:00 |
| h9-12,15m0s30 | 毎日9:00:30、10:00:30、11:00:30、12:00:30、15:00:30 |
| h9-12s30 | 毎日9:00:30、9:01:30、9:02:30 ... 12:58:30、12:59:30 |
| h9m/30;h10 (API固有の構文) | 毎日9:00、9:30、10:00 |
| h9m/30 h10 (フロントエンドで別の行として追加) |
毎日9:00、9:30、10:00 |
Zabbixプロキシとエージェントは、スケジューリング間隔を処理する際にローカルのタイムゾーンを使用することに注意してください。
このため、Zabbixプロキシまたはアクティブエージェントによって監視されるアイテムにスケジューリング間隔を適用する場合は、キューがアイテムの遅延を正しく報告しない可能性があるため、該当するプロキシまたはエージェントのタイムゾーンをZabbixサーバーと同じに設定することを推奨します。
Zabbixプロキシまたはエージェントのタイムゾーンは、systemdのユニットファイルで環境変数TZを使用して設定できます: