This discussion has been locked. The information referenced herein may be inaccurate due to age, software updates, or external references.
You can no longer post new replies to this discussion. If you have a similar question you can start a new discussion in this forum.

BGP OSPF and EIGRP Advance Alert

I received this when I had a support case about BGP alerting. I see a fair amount of BGP questions and thought it might help.

  • This is great except that it won't detect flapping links as the detection is too slow.

    Here's my original post on this from 2013

    BGP Neighbour alerts.

  • superfly99​ I couldn't find the other post where I saw your response to this so I'll thank you here. Our network guys used the above doc to set up alerting using emails and it has come up that it takes a while to alert. I will definitely look in to the syslog method which like you said is going to be a lot faster and would catch the flapping links.

  • Using syslog is really easy. For the BGP ones I just look for BGP-5-ADJCHANGE in Message Type Pattern. And for OSPF, I just use OSPF-5-ADJCHG*, OSPF-4-NEIGH_ERR* in the Message Type Pattern.

    If you have any hassles, just post back.

  • Great doc, I have used it to build my alert as well. Few thing I din't like though:

         1. Subject line is in-conclusive - "status is either X or Y" ... hmmm. X ... or Y ... Really?! So, what it is then?

         2. Multiple alerts needed for different protocols. Hmmm, why not combine into one?

    So, instead of creating multiple alerts - create just one. Use OR to combine different Routing Protocols in the rule, instead of creating separate alert for each.

    Subject line:

    ${SQL:SELECT DisplayName FROM NPM_RoutingProtocol WHERE ProtocolID=${ProtocolID}} Neighbor [${NeighborIP}] on Node [${Node.Caption}] is ${N=SwisEntity;M=ProtocolStatusDescription} (${SQL:SELECT StatusName FROM StatusInfo WHERE StatusID='${OrionStatus}'})

    Somewhere in the body I have this:

    <b>NeighborIP</b>: <a href="http://YourSolarWindsServerName-or-IP/Orion/View.aspx?NetObject=NBR:${NeighborID}">${NeighborIP}</a>

    <b>Protocol</b>: ${SQL:SELECT DisplayName FROM NPM_RoutingProtocol WHERE ProtocolID=${ProtocolID}}

    <b>Status</b>: ${N=SwisEntity;M=ProtocolStatusDescription} (${SQL:SELECT StatusName FROM StatusInfo WHERE StatusID='${OrionStatus}'})

    <b>IsDeleted</b>: ${IsDeleted}

    Result:

    pastedImage_1.png

    Best,

    Alex