Many IT organizations are divided into operational units. This allows them to manage, design and increase the efficiency of their business operations to meet their internal requirements. Some organize by technical specialization, others by activity, some by services, by geography, or any combination of those (or others). Whichever structure the organization chooses, these operational units remain responsible for the problems which occur in their environment.
Teams in OpsGenie provide a way for customers to reflect their internal organizational structure (who, when, etc.) and OpsGenie allows customers to define any number of teams as may be required to reflect their structure. This allows customers to easily leverage OpsGenie's alert/incident management and notification capabilities.
Teams are built up of users and once assigned to a team, they become team members. In OpsGenie, a user can be a member of multiple teams. Note that before adding a user to a team, the user has to first exist in OpsGenie. To accomplish this, users should be invited to your account. They will become enabled/active once they have signed in to OpsGenie for the first time. Users may also be given specific roles on a team. For example, some users may be granted the "Team Admin" role, in order to allow them to handle certain administrative tasks on behalf of the team.
All teams have an escalation policy by default when the team is created. When an alert is assigned to a team, all members of the team have access to the alert and can see it in the alerts view. The team escalation policy is used to determine "who" will be notified, by default. How you can change this behavior, and notify other escalations/on-call schedules are explained below in "Routing Rules" section.
The default configuration for the team escalation policy (as depicted below) is provided when the team is first created. Account or team admins have the right to change the configuration as needed. You can find more information about OpsGenie escalations here.
You can also create more escalation policies for the same team. You can edit, or remove them. Routing Rules defined on top of your Team dashboard specifies which escalation is going to be processed when an alert is assigned to the team.
All teams have an on-call schedule by default when the team is created. To leverage scheduling capabilities, an escalation policy step should point to the team schedule. First step of the default team escalation policy points to the on-call schedule user.
The default schedule configuration includes the team members that are added when the team is created in a weekly rotation. Admins can modify the schedules as needed.
You can define multiple schedules for the same team. By selecting "Notify on-call user(s) in schedule" in Routing Rules on top of your Team dashboard, you can directly specify a schedule to be used when the team is assigned to an alert.
A rotation is group of people who rotates through the same shift. You can provide multiple rotations for the schedule; and rotations can be restricted to specified time periods. When an alert escalated to the schedule, all on-call users in all the different rotations are notified (cumulative).
OpsGenie provides ad-hoc schedule exceptions, allowing schedule modifications without altering your schedule (rotations) settings. Overrides can be defined by admins or team members. A team member can take the on-call responsibility for the time interval he/she specifies. Team admins can define overrides for other members of the team as well. A schedule override replaces all on-call users from different rotations of the schedule.
You can find more information about OpsGenie schedules here.
Team routing rules provide the flexibility to notify a team using different escalation rules, or on-call schedules, for different alerts, at different times. You may specify “No One” (simplified alert suppression), a team escalation, or a team schedule. You can also specify multiple routing rules, each with their own unique conditions and time intervals.
Routing rules can be based upon alert properties and configured to apply at specific time intervals. However, regardless of the option selected, the alert will still be visible to all team members.
When an alert is created for a team, or when the alert is assigned to a team (using the "Add Team" action), the team's routing rules will be evaluated against the alert and the appropriate schedule/escalation/no-notification will be determined: the first matching routing rule will be applied for notifying the team. In other words, only one routing rule is to be applied for an alert. Routing rules are evaluated in the (top-down) order in which they are displayed.
When an alert is assigned to the team, the first matching routing rule will be applied for notifying the team. In other words, only one routing rule is to be applied for an alert.
Who will be notified when an alert is assigned to a team?
There are multiple ways to assign a team to an alert: via the web UI, the REST API, or more commonly, via integrations. An individual alert can also be assigned to multiple teams. When an alert is assigned to a team, the team's routing rules are evaluated against the alert to to determine which mechanism (escalation policies, schedules) should be used:
- For a team escalation, its rules are run to notify the alert recipients.
- For a team schedule, its current on-call users are notified for the alert.
OpsGenie also provides an optional alert field called "recipients" to specify who should be notified for that alert. If the recipients field is used when an alert is getting created, recipients field supersedes the teams assignment. The team members would still have access to the alerts (can see the alerts and execute actions), but the recipients field will be used to determine who should be notified. The recipients field can be used to specify different users, groups, schedules or escalations, instead of the team escalation policy. For existing alerts, add recipients and add teams actions can be used to notify other users that may not be members of the team.
Also see Alert Recipients & Teams for details about alert's visibility and recipients.