The Alert Management SCOM management pack is a tool for managing alerts throughout their lifecycle. This helps organizations automatically process alerts and allows them to ignore alerts which do not need looked at yet.
Read More...
By default, the “Owner” field for each OpsMgr alert is left blank. Using the Console, administrators can assign ownership to an individual or team. The field is free text: any value can be entered.
Why assign an “owner” to each alert? There many reasons why you might want to assign an alert Owner, chief among these is accountability. If you’ve been around OpsMgr long enough, you’re familiar with the “Alerts” view which lists out every open alert in the system. Who owns these alerts? What needs to be done with them?
Most management packs have their own Alert Views which are specific to object classes defined within that pack. However, this can quickly become cumbersome to dig through dozens or hundreds of nested folders searching for the right Alert View.
In addition, companies organize their IT teams differently and assign different areas of responsibility to each team. For example, at Company A, the Windows Team may also be responsible for Active Directory and DNS, but in Company B these technologies might be managed by different teams.
OpsMgr is deliberately engineered to allow for these different organizational complexities, but implementation is left up to individual customers.
With the SCOM Alert Management Pack, we assign alert ownership primarily based on the Management Pack that generated the alert. We use a customizable configuration file that allows OpsMgr admins to adjust alert assignment based on how their teams are organized. We allow you to define exceptions, so that you can make assignments more granular based on the properties of the alert. For example, we can differentiate ownership based on a substring of the full name for the monitoring object associated with the alert.
Now, with the Alert Owner field populated, we can create a custom view for the “Windows Team” that includes any alert where the Owner field equals “Windows Team”. This can include all the alerts from the basic Windows Management Packs, plus alerts from the Cluster Management Pack, the DNS Management Pack and others that you can choose. If you have created custom management packs with alerts that are specific to your Windows team, you can include those alerts as well. This allows you to put all the alerts for your Windows Team in one view and you don’t have to create a single group.
STOP!!!!!
Download the Alert Management MP: https://github.com/hmscott4/AlertManagement .
Detailed installation instructions: Install Management Pack · hmscott4/AlertManagement Wiki (github.com)
A basic overview of the steps:
We generate two Configuration Files as part of the Management Pack. The default configuration files are meant to serve as a “starting point”. You may edit them as needed to suit your operational requirements.
IMPORTANT: The configuration files should be stored on a file share that is accessible to all the management servers in your Management Group.
IMPORTANT: When we generate the default assign.alert.config file, we iterate through all the management packs in your Management Group and make an educated guess as to the default owner. However:
Let’s have a closer look at the “assign.alert.config” file. The XML is broken down into two primary regions: “exceptions” and “assignments“. Think of assignments as being the “default” behavior. Exceptions are just that: exceptions to the defaults.
<exceptions>
<exception ID="1" Name="Server Offline" Owner="EFG Windows Team" enabled="true">
<Alert Name="Health Service Heartbeat Failure" >
<AlertProperty>MonitoringObjectDisplayName</AlertProperty>
<AlertPropertyMatches>efg.lcl</AlertPropertyMatches>
</Alert>
</exception>
<exception ID="2" Name="Server Offline" Owner="Windows Team" enabled="true">
<Alert Name="Health Service Heartbeat Failure" />
</exception>
<exception ID="3" Name="Windows Server EFG" Owner="EFG Windows Team" enabled="true">
<ManagementPack Name="Microsoft.Windows.Server.2016.Monitoring" />
<AlertProperty>MonitoringObjectFullName</AlertProperty>
<AlertPropertyMatches>efg.lcl</AlertPropertyMatches>
</exception>
</exceptions>
<assignments>
<assignment ID="1" Name="Windows" Owner="Windows Team" enabled="true">
<ManagementPack Name="Microsoft.Windows.Server.2016.Monitoring" />
<ManagementPack Name="Microsoft.Windows.Server.2012.Monitoring" />
<ManagementPack Name="Microsoft.Windows.Server.2012.R2.Monitoring" />
</assignment>
<assignment ID="2" Name="Monitoring" Owner="Monitoring Team" enabled="true">
<ManagementPack Name="Microsoft.SystemCenter.2007" />
</assignment>
</assignments>
First things first:
When the “Assign SCOM Alerts” rule runs, we do the following:
We evaluate each open alert where the Owner field is blank or “Unassigned”. We then match it to an exception or an assignment in the configuration file. We then update the alert Owner and set the resolution state to “Assigned”. Once a match is found, we’re done with that alert.
If we are unable to find a match, then the Owner will be updated to “Unassigned“. We always check for open “Unassigned” alerts during the “Assign SCOM Alerts” phase. So, if you update the configuration file, we’ll update the ownership assignment for matching “Unassigned” alerts.
Using the example above, alerts are evaluated using the following rules (in order):
By default, the “Assign SCOM Alerts” rule is disabled. To enable the rule, use an override:
There are two overrides that are required:
Optionally, you can also set the following Overrides:
In my lab environment, I have three separate domains “administered” by two independent teams:
What does this look like in OpsMgr? I have shut off four servers in my lab: 3 from my primary (“ABCD”) domain, and 1 from my secondary (“EFG”) domain.
When the alerts first show up, they look just as the always do:
After a couple of minutes, the Management Pack gets the new alerts, updates the Owner field and sets the Resolution State to “Assigned“:
Note: By default, the Owner field is not displayed in the main “Alerts” view. You can add it to the display by right-clicking the title bar and selecting “Personalize View…“. Then, click on the check-box next to the “Owner” field. While you’re at it, consider checking the fields “Last Modified” and “Repeat Count“.
By double-clicking on the alert, we can see the Owner field and the Resolution State:
Internally, if you look at the History tab in the Alert, you’ll see what was done. We add a comment that indicates:
The History tab looks like:
Now, if I’m a member of the EFG Windows Team, I can create a custom Alert view and display all the alerts that have been assigned to the “EFG Windows Team”. It doesn’t matter which Management Pack generated the alert, I can filter just those alerts that have been Assigned to the EFG Windows Team.
After saving this new view, I can open it and see all the Open alerts that have been assigned to the EFG Windows Team. Note that I snuck in a couple of additional alerts. These were generated by the Windows Server 2016 Management Pack and were assigned to the EFG Windows Team because the Monitoring Object Full Name matches the text “efg.lcl”. This action was performed by Exception ID 3.
Now, instead of having to search all over the OpsMgr console to find the alerts that apply to my team, I can find all of my alerts in one place. I don’t have to create a lot of complex Dynamic Groups to ensure that my support teams only see the alerts that they “own”.
We can also leverage the alert Owner field when generating incidents for a Service Desk application. We can map the Owner field to a specific queue within the Service Desk application. This helps ensure that alerts get routed to the correct team immediately.
Finally, with PowerShell, we can generate reports with the number of open alerts by Owner. This can help drive greater accountability into our monitoring solution.
Here’s a quick one-liner in PowerShell to show the count of open alerts by Owner:
Get-SCOMAlert -Criteria "ResolutionState < 255" | Group-Object Owner
And the results:
There are a lot of people who have helped make this management pack a reality. It would be impossible to thank all of them, but I would like to specifically acknowledge:
Management Pack | Version |
---|---|
SCOMAgentHelper | 1.0.0.12 |