Showing results for 
Search instead for 
Did you mean: 
Create Post
Level 7

Need help with HSRP alert

I need to create an alert in NPM to tell me when an HSRP-enabled node has changed states (active/standby). I've searched and read some other post that were KIND OF what I need to do, but I just ended up confused,  Can anyone who has accomplished this let me know how it was you did it?

Thanks in advance!

0 Kudos
1 Reply
Level 11

Two options:

1. Use "snmp-server enable trap hsrp" on a cisco device to enable SNMP trap delivery for state changes of HSRP. Make sure your SNMP configurations can send traps to SWinds (too much to explain, but I expect this is already done).

HSRP MIB - Cisco

Then configure a Trap Viewer rule to e-mail you when you receive alerts from <nodeIP>.

2. Create a UnDP

This OID returns the "state" of your corresponding instance. The output is "RowID // Result" where RowID is "{vlan}.{HSRP Group #}" (e.g. 102.1 is VLAN 102, group 1). The result is "state" represented numerically.

The states are for initialization, learning, listening, speaking, standby, and active in respective order, 1-6. So Active = 6, standby = 5, etc.

While you are creating this UnDP, you can click advanced settings and perform an enumeration - basically tell the system that "when you see value #, report <text>". You'll have to manually input the corresponding values "1:Init", "2:Listening", etc. (Note: when adding enumerations, just hit enter, and it'll add a new line. then click on the new line to enter values).
Then you can create an advanced alert based on the UnDP and the possible enumeration results, with basically the following logic:

MONITOR TYPE: Custom Node Poller

Trigger Alert when ANY of the following apply:

     Trigger alert when ALL of the following apply:

          Node Name is equal to <your HSRP Active Router's hostname>

          Poller Name is equal to <YOUR UNDP's NAME>

          Value is not equal to <YOUR ENUMERATION FOR value "6", Active>

#     Trigger alert when ALL of the following apply:

#          Node Name is equal to <your HSRP Standby router's hostname>

#          Poller Name is equal to <Your UNDP's Name>

#          Value is not equal to <YOUR ENUMERATION FOR value "5", Standby>

# = Optional. You don't necessarily have to define this, unless you care to observe that the status on the standby router has changed as well. Might create a lot of noise when you have an HSRP state change event though.

Obviously, there's more than one way to skin this cat, especially when it comes to the Advanced Alert, and this may be significantly easier if you have 11.5 implemented (your enumeration might be available in a drop down).

Doing it this way (via UnDP) also gives you the opportunity to add the status of all your HSRP instances on your nodes' details page as a "Tabular Universal Device Poller" custom resource. For instance, mine is now set up to tell me:

COLUMN 1                                 COLUMN 2

<Virtual IP>                                   <status>

<Virtual IP>                                   <status>

<Virtual IP>                                   <status>

<Virtual IP>                                   <status>



0 Kudos