xMatters - Learn to Utilize the NotifyNext Function

Posted by Travis DePuy  I  October 1, 12

Group Supervisors: Have you ever had a member of your group respond to a ticket via xMatters with ignore, only for the system to wait 15 minutes to notify the next member? That seems like a pretty long time to wait if you know that first member isn’t going to accept or start working the issue. So much for notifying the right person at the right time (xMatters pun)!

But wait, there is hope, the notifyNext function, when triggered will do exactly what it says on the tin... notify the next person in the rotation.

Consider the Operations group. It consists of a 24x7 coverage with a team of 4, 3 worker bees and a manager:

NotifyNext Example - Operations Group

The team is laid out with 15 minute escalations between the worker bees, then a 30 minute escalation to the manager type.

And then all of a sudden, a Windows Server 2008 machine named win28k002 goes haywire and melts. The monitoring tool detects this and injects an event into xMatters to notify the Operations group of the bad news. A few clicks around the xM UI (Reports tab > Event Activity > selected event > Exhaustive) shows who was notified and how they responded.

NotifyNext Example - Notification pre-NotifyNext

Well, a flock of moose decided to take up residence on the 163 and user1020 won’t be able to do much about that server, so he Rejects the alert by clicking the handy link on his smart phone... And then we wait... And wait... and win28k003, which unfortunately is under win28k002 in the rack starts to melt too... and we still wait... For another 12 minutes... And THEN the 15 minute escalation occurs and user1030 is able to Accept the alert and go find a fire extinguisher.

This kind of situation is what the “notifyNext” function was written for. This is available on the @notification object (as doc’d in the xMatters Online Developer's Guide):

@notification::notifyNext == Bypasses any remaining escalation time between the recipient currently scheduled to be notified and the next scheduled recipient within the team

This is typically called on the HANDLER > response script after determining the reply value. If a user does a Reject, then let’s notify the next user automatically.

ELSE-IF ($reply == "Reject" || $reply == "Remove" || $reply == "Acknowledge")
$result = @notification::notifyNext()
@event::report($result)
# ... other stuff here ...

A few weeks later, there is another melt down! Again, the monitoring application injects an event to notify Operations. Unfortunately, the moose are still blocking the 163 and Bob can’t get to the data center. But this time, the notifyNext function kicks in and goes directly to user1030:

NotifyNext Example - Notification post-NotifyNext

You have to kind of look at the time stamps to see the escalation did not actually take the full 15 minutes, so maybe doing a person::report just after doing the notifyNext to show that was why the escalation occurred.

Editor's note: Travis DePuy is the Technical Lead for Techport Thirteen's xMatters/Bomgar Projects Division. Please leave him a question or comment below, or request a demo of xMatters to see him in action in person:

request-a-demoof-xmatters

Tags:  xMatters