通知間隔

出典: Nagios 3翻訳プロジェクト Wiki

目次

導入 Introduction

管理者達はしばしば彼らがそれらを最も少なくしたい時、ポケットベル、携帯電話呼び出しなどに答える負担を背負わなければなりません。
だれも、午前4時に問題を片付けるために起こされるのは好きではありません。しかし、それは夜中に問題を修正するために、あなたが翌朝の午前9時に立ち寄るとき、
不幸な上司の復讐に直面するよりむしろ、ましな事がしばしばです。

そうした、アラートに答える責任の共有を助けることができる指導者のチームを持つそれらの幸運な管理者達のために、呼び出しのローテーションはしばしば楽な仕事になります。複数の管理者達が、週末、週日の夜、休日などに関する通知を取りながら、しばしば交替するでしょう。

どのように呼び出しのほとんどの通知ローテーションを楽にすることができる方法で 時間帯 定義を作成できるかをお見せします。, これらの定義は必然的に現れる人事(病欠を知らせたり、シフトを交換したり、またはポケットベルを川へ投げ込む管理者達)を処理しないでしょう。しかし、それらはあなたにその時間の大部分を処理するはずである基本構造をセットアップさせるでしょう。

シナリオ 1: 休日と週末 Scenario 1: Holidays and Weekends

2人の管理者・ジョンとボブ…はNagiosアラートに応じる責任があります。ジョンは、休日を除いた平日(日々24時間)はすべての通知を受け取ります。 ボブは週末と休日の間、通知を処理します。幸運なボブ。 あなたがtimeperiodsを使用するローテーションのタイプを定義どのように出来るかがここに、あります…。

まず最初に、休日・平日および週末の間の時間範囲を含む3つの時間帯を定義して下さい :

	

define timeperiod{

	name			weekdays

	timeperiod_name		weekdays

	monday			00:00-24:00

	tuesday			00:00-24:00

	wednesday		00:00-24:00

	thursday		00:00-24:00

	friday			00:00-24:00

	}

	

define timeperiod{

	name			weekends

	timeperiod_name		weekends

	saturday		00:00-24:00

	sunday			00:00-24:00

	}



define timeperiod{

	name			holidays

	timeperiod_name		holidays

	january 1		00:00-24:00	; New Year's Day

	2008-03-23		00:00-24:00	; Easter (2008)

	2009-04-12		00:00-24:00	; Easter (2009)

	monday -1 may		00:00-24:00	; Memorial Day (Last Monday in May)

	july 4			00:00-24:00	; Independence Day

	monday 1 september	00:00-24:00	; Labor Day (1st Monday in September)

	thursday 4 november	00:00-24:00	; Thanksgiving (4th Thursday in November)

	december 25		00:00-24:00	; Christmas

	december 31		17:00-24:00	; New Year's Eve (5pm onwards)

	}


次に、ジョンの呼び出し回のために平日を含む時間帯を定義してください。しかし、上の休日タイムピリオドで定義された日にち・時間は除く。

define timeperiod{

	timeperiod_name		john-oncall

	use			weekdays	; Include weekdays

	exclude			holidays	; Exclude holiday dates/times defined elsewhere

	}

あなたは現在、ジョンのコンタクト定義においてこの時間帯に参照をつけることが出来ます。:

define contact{

	contact_name			john

	...

	host_notification_period	john-oncall

	service_notification_period	john-oncall

	}

週末と、上の休日timeperiodで定義した日にち・時間を含むボブの呼び出し回のために、新しい時間帯を定義してください。:

define timeperiod{

	timeperiod_name		bob-oncall

	use			weekends,holidays	; Include weekend and holiday date/times defined elsewhere

	}

あなたは現在、ボブのコンタクト定義においてこの時間帯に参照をつけることが出来ます。:

define contact{

	contact_name			bob

	...

	host_notification_period	bob-oncall

	service_notification_period	bob-oncall

	}


シナリオ2: 交互の日々 Scenario 2: Alternating Days

このシナリオでは、ジョンとボブは、それが週末であるかどうか平日、または休日にかかわらず一日おきにアラートを扱いながら、交替します。

ジョンが通知を受け取るべきである時のために、時間帯を定義してください。本日の日付が2007年8月1日であり、ジョンが今日からの通知を処理していると仮定する場合、定義はこのようになるでしょう:

define timeperiod{

	timeperiod_name		john-oncall

	2007-08-01 / 2		00:00-24:00	; Every two days, starting August 1st, 2007

	}

今度は、ボブが通知を受け取るべきである時のために時間帯を定義してください。ボブが、ジョンがしない数日の通知を得るので、最初に呼び出し日は明日(2007年8月2日)始まります

define timeperiod{

	timeperiod_name		bob-oncall

	2007-08-02 / 2		00:00-24:00	; Every two days, starting August 2nd, 2007

	}

今、あなたはコンタクト定義とのこれらの時間帯定義の参照をジョンとボブのために必要とします:

define contact{

	contact_name			john

	...

	host_notification_period	john-oncall

	service_notification_period	john-oncall

	}


define contact{

	contact_name			bob

	...

	host_notification_period	bob-oncall

	service_notification_period	bob-oncall

	}


シナリオ3: 交互の週 Scenario 3: Alternating Weeks

このシナリオでは、ジョンとボブは、隔週でアラートの処理を交替します。 ジョンは日曜日から土曜日の間、アラートを1週間処理します、そして、ボブは次の7日間アラートを処理します。 これは永続します。

ジョンが通知を受け取るべきである時のために、時間帯を定義してください。 本日の日付が2007年7月29日日曜日であり、ジョンが今週通知を処理する(今日から)と仮定する場合、定義はこのようになるでしょう:

define timeperiod{

	timeperiod_name		john-oncall

	2007-07-29 / 14	00:00-24:00	; Every 14 days (two weeks), starting Sunday, July 29th, 2007

	2007-07-30 / 14	00:00-24:00	; Every other Monday starting July 30th, 2007

	2007-07-31 / 14	00:00-24:00	; Every other Tuesday starting July 31st, 2007

	2007-08-01 / 14	00:00-24:00	; Every other Wednesday starting August 1st, 2007

	2007-08-02 / 14	00:00-24:00	; Every other Thursday starting August 2nd, 2007

	2007-08-03 / 14	00:00-24:00	; Every other Friday starting August 3rd, 2007

	2007-08-04 / 14	00:00-24:00	; Every other Saturday starting August 4th, 2007

	}

今度は、ボブが通知を受け取るべきである時のために、時間帯を定義してください。 ボブが、ジョンがしない数週間の通知を得るので、最初に呼び出し日は明日(2007年8月2日)始まります。

define timeperiod{

	timeperiod_name		bob-oncall

	2007-08-05 / 14	00:00-24:00	; Every 14 days (two weeks), starting Sunday, August 5th, 2007

	2007-08-06 / 14	00:00-24:00	; Every other Monday starting August 6th, 2007

	2007-08-07 / 14	00:00-24:00	; Every other Tuesday starting August 7th, 2007

	2007-08-08 / 14	00:00-24:00	; Every other Wednesday starting August 8th, 2007

	2007-08-09 / 14	00:00-24:00	; Every other Thursday starting August 9th, 2007

	2007-08-10 / 14	00:00-24:00	; Every other Friday starting August 10th, 2007

	2007-08-11 / 14	00:00-24:00	; Every other Saturday starting August 11th, 2007

	}

今、あなたはジョンとボブのためにコンタクト定義とのこれらの時間帯定義を参照に必要とします:

define contact{

	contact_name			john

	...

	host_notification_period	john-oncall

	service_notification_period	john-oncall

	}


define contact{

	contact_name			bob

	...

	host_notification_period	bob-oncall

	service_notification_period	bob-oncall

	}


シナリオ4: 休暇 Scenario 4: Vacation Days

このシナリオでは、ジョンは彼がオフにする以外のすべての日間、通知を処理します。彼は、毎月いくつかの計画された休暇と同様に数日の有給休暇を取ります。ジョンが休暇かオフィスの外にいるとき、ボブは、通知を処理します。

まず最初に、以下で何日もジョンの休暇のための時間範囲を含む時間帯を定義してください。

define timeperiod{

	name			john-out-of-office

	timeperiod_name		john-out-of-office

	day 15			00:00-24:00	; 15th day of each month

	day -1			00:00-24:00	; Last day of each month (28th, 29th, 30th, or 31st)

	day -2			00:00-24:00	; 2nd to last day of each month (27th, 28th, 29th, or 30th)

	january 2		00:00-24:00	; January 2nd each year

	june 1 - july 5		00:00-24:00	; Yearly camping trip (June 1st - July 5th)

	2007-11-01 - 2007-11-10	00:00-24:00	; Vacation to the US Virgin Islands (November 1st-10th, 2007)

	}

次に、上のtimeperiodで定義した日にち・時間を除くジョンの呼び出しの回のために、時間帯を定義して下さい:

define timeperiod{

	timeperiod_name		john-oncall

	monday			00:00-24:00

	tuesday			00:00-24:00

	wednesday		00:00-24:00

	thursday		00:00-24:00

	friday			00:00-24:00

	exclude			john-out-of-office	; Exclude dates/times John is out

	}

あなたは現在、ジョンのコンタクト定義において、この時間帯に参照をつけることができます:

define contact{

	contact_name			john

	...

	host_notification_period	john-oncall

	service_notification_period	john-oncall

	}

ジョンがオフィスに不在である日付/時間を含んでいるボブの呼び出し回のために新しい時間帯を定義してください:

define timeperiod{

	timeperod_name		bob-oncall

	use			john-out-of-office	; Include holiday date/times that John is out

	}

あなたは現在、ボブのコンタクト定義においてこの時間帯に参照をつけることができます:

define contact{

	contact_name			bob

	...

	host_notification_period	bob-oncall

	service_notification_period	bob-oncall

	}

他のシナリオ Other Scenarios

あなたが持っているかもしれない呼び出しに関する他の多くの通知回転シナリオがあります。 時間帯定義における日付の例外設定は、あなたが使用する必要のあるかも知れないほとんどの日付と日付の範囲を扱うことができます。あなたが使用できる異なったフォーマットを調べて下さい。もし時間帯定義を作成する時にミスを犯すのなら、呼び出し義務の時間を他の誰かにもっと与える側でいつも間違えてください。:-)

個人用ツール