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.

Advanced Alert - OID Table Format

I'll start off by saying I'm new to creating alerts in the NPM.

I have an OID that returns a table saying which of it's attached devices are up.  I'm assuming that each row corresponds with which port they hang off of.  Certain ports always say OFF because there's nothing hanging off of them, while others say ON.  We have around 30 or 40 of these devices and it doesn't seem like there was any standard as to which ports to plug the devices into.

There is another OID that grabs the description of each port.  The only ones that have been changed are the ones that are currently being used.

I'm looking for a way to say if OID.description contains xxxx and if in the corresponding row OID.status equals OFF then alert me.  I'm having some troubles because (I think) of the table format.

Is there a way to use the information from the description to basically filter out which ones are active using the second OID, while only alerting me on the OFF ports from the first OID?  If there is, generally, how would I do it?

Thanks.

Parents
  • So, the goal is to get notified if any ports with a specific text in the description matches.

    In my experience, no, the SW way to accomplish what you're trying to do is assign a custom property to interfaces,
    and the alert 'filtering' you're looking for will happen via that mechanism.  This is what we do for interfaces that have
    a higher level of criticality based on whatever's connected to it.

    I can give more detail if you need it.

    Peter 

Reply
  • So, the goal is to get notified if any ports with a specific text in the description matches.

    In my experience, no, the SW way to accomplish what you're trying to do is assign a custom property to interfaces,
    and the alert 'filtering' you're looking for will happen via that mechanism.  This is what we do for interfaces that have
    a higher level of criticality based on whatever's connected to it.

    I can give more detail if you need it.

    Peter 

Children


  • So, the goal is to get notified if any ports with a specific text in the description matches.

    In my experience, no, the SW way to accomplish what you're trying to do is assign a custom property to interfaces,
    and the alert 'filtering' you're looking for will happen via that mechanism.  This is what we do for interfaces that have
    a higher level of criticality based on whatever's connected to it.

    I can give more detail if you need it.

    Peter 



    I'll be a little bit more explicit, since that read kind of vague after I hit the 'post' button.

    1)  Create the new custom property for "interfaces", we'll call it "VIP" for this example

    2)  Decide if you want "VIP" to be a yes/no (true/false) or text field, and how long it should be.

    3)  Assign the custom property *value* to to the interfaces that matter to you, using custom property editor, scroll over to the VIP column, maybe use the filter to filter out everything but the description contains you're looking for.  If it's a yes/no (true/false) property, you'll have a checkbox in the custom property editor, if it's text, you need to assign the value you want to trigger off of.

    4)  Once you've done all that, open up your advanced alert manager and create the alert.  Set the trigger condition first to check the interface custom properties, then the interface status, create your actions as desired.

    So.. the trigger would look something like Interfaces.VIP=1 and Status is not unmanaged, or admin down, and then link down.

    Hopefully that gives you a bit more to go on.

    Peter

  • The problem is that the device doesn't have interfaces per se, at least none that I can add to Solarwinds.

    I have 2 OIDs, one asking for the status of the "interface," or contacts to be more correct.  I receive something like this:

    0 - OFF

    1 - ON

    2 - OFF

    3 - OFF

    4 - OFF

    5 - ON

    6 - ON

    Where as from the description OID I get this:

    0 - OFF

    1 - CAT

    2 - DOG

    3 - DOG

    4 - PERSON

    5 - CAT

    6 - CAT

    I'd like to have an alert check the table to see if both CAT and OFF are in the same positions... if they are send an alert.  Otherwise it's ok.  The people monitoring it can then open the device, check the table and see what is down.

  • Well, see, therein lies the problem.  You want do do something I've come up against more than once and half-succeeded/half failed to accomplish.

    Alerting on a table in and of itself is difficult.  You have to specify a row ID and do a very custom SQL statement in the alert actions.  It's kludgy, and not manageable for a table that changes regularly.

    The way we've eventually chosen to solve it, is to offboard the data to a table in the database, which we can then look up against.

    In your case, the table is static.  When you poll it, you can select a column to take labels from, then you can alert on the values against the labels.

    The other way it worked, is that we created an alert for every row we wanted to match on.  To do that, specify the ROW label (the data from the column you selected to use the labels from), and the value pair in the trigger conditions.  You won't be able to do an alert that walks the whole table, but you can do one that's targeted to that specific row, so for each device type, if you have 8 rows, you have 8 alerts.

    This is a use case that SW hasn't really addressed yet, and it's one of those gaping holes in functionality like so many others that have recently been addressed, so I have hopes Product will chime in on this thread and talk about the feature enhancement getting done.

    Alerting against dynamic SNMP tables is a really big deal for us.

    Another possibility to reduce the complexity of the alert, is to look for the OID's that specify the individual rows/columns.  Most SNMP implementations offer that (not all).

    Peter

  • Thanks a bunch for your reply Peter.

    Would I be using saying to trigger alert when value DOG is equal to value OFF.  (I'm waiting to test this one, but our testing device is remote)

    I've looked for something like "field row label is equal to xxxxxx" but I haven't found it.