Available is only to detect if the OID exists... I am not certain what is happening in this case.
I suspect doing all that extra work on the available line is confusing the check to see if the OID exists. Available doesn't need to be an if statement.
You can simplify your available line and do all the complex stuff on the error and value entries.
If you only put oid("1.3.6.1.2.1.25.2.3.1.5.2") on the available line it should still be accurate since devices that just don't have that OID wont return true. If that still causes the probe to be installed on devices that don't contain that OID you can try dropping the 2.
Also -1 at the end doesn't resolve to false... UGG
if((((((oid("1.3.6.1.2.1.25.2.3.1.5.2")-oid("1.3.6.1.2.1.25.2.3.1.6.2"))*oid("1.3.6.1.2.1.25.2.3.1.4.2"))/1024)/1024)/1024)>0, 1,
-1)
If I was going to try to use an if in the available line I would change it to something more like this...
if((((((oid("1.3.6.1.2.1.25.2.3.1.5.2")-oid("1.3.6.1.2.1.25.2.3.1.6.2"))*oid("1.3.6.1.2.1.25.2.3.1.4.2"))/1024)/1024)/1024)
>"", 1,
0)
I know -1 should be false but you will find in the probe thread that I spent quite a bit of time trying to tune the cisco_cpu probe and I finally have a probe that is very accurate with no false positives.
I hope I am not confusing things, I am really just trying to help so bear with me.
Here is a couple screen shots of the cisco cpu function and probe that I use for a model for all my other probes.
cpu_avail.PNG
cpu_probe.PNG
That might clear things up a little bit.
You do not have the required permissions to view the files attached to this post.