On 22 Jun 2011 at 10:27, Dave Shield wrote:
> On 22 June 2011 09:54, Giuseppe Modugno <[email protected]> wrote:
> > I think DisMan Event MIB has the purpose to allow the user to completely
> > customize the OIDs to monitor and the conditional expressions that trigger
> > notifications.
> > In my case, I don't want to give the user this flexibility.
>
> Then don't.
> It would be perfectly possible to hardcode a suitable "monitor" entry,
> that would provide the necessary monitoring, without allowing the final
> user to change this.
>
> I'm suggesting that you use the *functionality* of the Event MIB support,
> rather than re-implementing this yourself. You might as well start with
> what's already in place - experiment with this yourself.
Your suggestion is good, but now the architecture is too far from
this. The control board that monitors the voltages inside the
equipment doesn't run any agent. It is the responsibility of this
board to check if any voltage goes outside the nominal range. The
thresholds are stored in a non-volatile memory of this board and can
be customized only by a local display.
This board communicates with a proprietary protocol through RS232 to
the extension of Net-SNMP agent. When a voltage leaves the normal
state and enters alarm state, the board sends a bunch of bytes
through RS232 to the agent so a notification can be emitted.
At the moment even the thresholds are hidden to SNMP. Only alarm
events are known to the agent.
> > Moreover the conditional expressions are very complex so the facility of
> > DisMan Event would be too limiting.
>
> Can you expand on this, please.
Just an example. A low level threshold is associated to each
voltage, but the condition is checked only if the equipment is full
ON. Indeed the equipment could be in a standby condition where all
the voltages are zero. In this case, they are lower than the minimum
threshold, but notifications shouldn't be emitted by the agent.
Most probably I'm wrong, but I couldn't see the right way to
implement this behaviour through DisMan Event functionality.
> > I have the following objects defined in myMIB:
> > myV1 OBJECT-TYPE
> > SYNTAX Integer32
> > UNITS "V"
> > MAX-ACCESS read-only
> > STATUS current
> > DESCRIPTION "First voltage"
> > ::= { myMIB 1 }
> > myV2 OBJECT-TYPE
> > SYNTAX Integer32
> > UNITS "V"
> > MAX-ACCESS read-only
> > STATUS current
> > DESCRIPTION "Second voltage"
> > ::= { myMIB 2 }
> > ...and so on.
>
> First question - how many voltages will there be?
They are a fixed number, ten.
> Could this ever change? (Perhaps with different hardware)
At the moment they are ten and will be ten on this product. What
could be happen in the future, is hard to say...
> Why are you using individual scalar objects rather than a table?
This is a good question and I don't have a good answer :-)
I am new to SNMP and I started with scalars because they are simpler
to understand and implement. Maybe the table approach is more
elegant, but I think it doesn't add much more to my scalar approach
(considering that the table has a fixed number of rows and just a
column, the voltage value associated).
------------------------------------------------------------------------------
Simplify data backup and recovery for your virtual environment with vRanger.
Installation's a snap, and flexible recovery options mean your data is safe,
secure and there when you need it. Data protection magic?
Nope - It's vRanger. Get your free trial download today.
http://p.sf.net/sfu/quest-sfdev2dev
_______________________________________________
Net-snmp-coders mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/net-snmp-coders