2.4 KiB
Time Periods
Time Periods define time ranges in Icinga where event actions are
triggered, for example if a service check is executed or not within
the check_period
attribute. Or a notification should be sent to
users or not, filtered by the notification_period
configuration
attribute for Notification
and User
objects.
Note
If you are familar with Icinga 1.x - these time period definitions are called
legacy timeperiods
in Icinga 2.An Icinga 2 legacy timeperiod requires the
ITL
provided templatelegacy-timeperiod
.
The TimePeriod
attribute ranges
may contain multiple directives,
including weekdays, days of the month, and calendar dates.
These types may overlap/override other types in your ranges dictionary.
The descending order of precedence is as follows:
- Calendar date (2008-01-01)
- Specific month date (January 1st)
- Generic month date (Day 15)
- Offset weekday of specific month (2nd Tuesday in December)
- Offset weekday (3rd Monday)
- Normal weekday (Tuesday)
If you don't set any check_period
or notification_period
attribute
on your configuration objects Icinga 2 assumes 24x7
as time period
as shown below.
object TimePeriod "24x7" inherits "legacy-timeperiod" {
display_name = "Icinga 2 24x7 TimePeriod",
ranges = {
"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",
"saturday" = "00:00-24:00",
"sunday" = "00:00-24:00",
}
}
If your operation staff should only be notified during workhours
create a new timeperiod named workhours
defining a work day with
09:00 to 17:00.
object TimePeriod "workhours" inherits "legacy-timeperiod" {
display_name = "Icinga 2 8x5 TimePeriod",
ranges = {
"monday" = "09:00-17:00",
"tuesday" = "09:00-17:00",
"wednesday" = "09:00-17:00",
"thursday" = "09:00-17:00",
"friday" = "09:00-17:00",
}
}
Assign the timeperiod as notification_period
to the Notification
object then.
object Host "localhost" {
services["ping4"] = {
notifications["mail"] = {
templates = [ "generic-notification" ],
notification_command = "mail-notification",
users = [ "icingaadmin" ],
notification_period = "workhours"
}
}
}