WARNING: Result from SNMP not valid. Partial Result:

Post general support questions here that do not specifically fall into the Linux or Windows categories.

Moderators: Developers, Moderators

Post Reply
netpoke2369
Posts: 3
Joined: Fri Apr 30, 2004 10:36 am

WARNING: Result from SNMP not valid. Partial Result:

Post by netpoke2369 »

I need some help. I recently updated cacti to cacti-0.8.6i-1 running on linux box. The upgrade went well and most everything is updating and graphing as it should. However, I have 2 OIDs that are not updating and I have found the following in the log file:

CMDPHP: Poller[0] Host[133] DS[1288] SNMP: v2: r403aModem, dsname: snmp_oid, oid: CDM-570::cdm570TxPowerLevel.0, output: U
CMDPHP: Poller[0] Host[133] DS[1288] WARNING: Result from SNMP not valid. Partial Result: -153 0.1

However, snmpget returns:

snmpget -v2c -c HPR34d r403aModem CDM-570::cdm570TxPowerLevel.0
CDM-570::cdm570TxPowerLevel.0 = INTEGER: -153 0.1 dBm

Other OIDs are working fine for this device.

Could it be the "0.1" that is being returned after the actual value that is confusing cacti? If it is how do I get it to ignore that portion when parsing the returned value?

Thanks
Spingo
Posts: 4
Joined: Thu Oct 19, 2006 7:18 pm

Post by Spingo »

I too get a similar problem. I am graphing the environmental sensor for an APC UPS, which stopped workig immediately after upgrading to 0.86i.

Cacti log says:
10/20/2006 10:20:04 AM - CMDPHP: Poller[0] Host[6] DS[87] SNMP: v1: 192.168.1.112, dsname: snmp_oid, oid: .1.3.6.1.4.1.318.1.1.10.2.3.2.1.4.1 , output: U
10/20/2006 10:20:04 AM - CMDPHP: Poller[0] Host[6] DS[87] WARNING: Result from SNMP not valid. Partial Result:

snmpget says:
snmpget -v 1 -c public 192.168.1.112 .1.3.6.1.4.1.318.1.1.10.2.3.2.1.4.1
SNMPv2-SMI::enterprises.318.1.1.10.2.3.2.1.4.1 = INTEGER: 30



I can't fathom how Cacti gets "U" as the output when running the command manually, I clearly get 30 (degrees)...
User avatar
TheWitness
Developer
Posts: 17007
Joined: Tue May 14, 2002 5:08 pm
Location: MI, USA
Contact:

Post by TheWitness »

The results MUST be numeric. Things like the word "degree's" make Cacti very unhappy. Also, non-numeric strings such as "153 -0.1 dBm" are not in scientific notation.

When you have data like this being returned from your hardware vendors agent, you should open ticket's with them and tell them that you would much rather see the unit's in the OID description and not in the output.

Until then, you will have to write scripts (script server is best) to reformat the data the way you like it.

TheWitness
True understanding begins only when we realize how little we truly understand...

Life is an adventure, let yours begin with Cacti!

Author of dozens of Cacti plugins and customization's. Advocate of LAMP, MariaDB, IBM Spectrum LSF and the world of batch. Creator of IBM Spectrum RTM, author of quite a bit of unpublished work and most of Cacti's bugs.
_________________
Official Cacti Documentation
GitHub Repository with Supported Plugins
Percona Device Packages (no support)
Interesting Device Packages


For those wondering, I'm still here, but lost in the shadows. Yearning for less bugs. Who want's a Cacti 1.3/2.0? Streams anyone?
Spingo
Posts: 4
Joined: Thu Oct 19, 2006 7:18 pm

Post by Spingo »

TheWitness wrote:The results MUST be numeric. Things like the word "degree's" make Cacti very unhappy.
My results ARE numeric (see the output I pasted - I put the word "degrees" in parenthesis to emphasise this).

In any case, I found a solution a few minutes ago. I had to click on Data Input Methods > Get SNMP Data and changed the input type from "SNMP Query" to "SNMP". Don't know why that worked, but my graph is working again...
ymartin59
Posts: 40
Joined: Fri Feb 17, 2006 7:42 am

Post by ymartin59 »

Hello,
After an upgrade from 0.8.6h-1bpo1 (Debian Sarge) to 0.8.6i, only some of my devices have troubles. No graph for the complete device. The only sources are ucd/net cpu and disks. So data are numeric. All devices (30) are monitored the same way but I only have 4/5 devices "up" without graphs.
In debug log, SNMP output is "U" like in your case.

I use SNMP v3 with SHA/DES so I have done a little patch on lib/snmp.php to switch that options. As a remark, it would be nice that SHA is enabled in cacti administration interfaces.

As everything was ok with previous version, I investigate the lib/snmp.php and force the use of SNMP_METHOD_BINARY => now everything works well.
So it seems that the package "php4-snmp" 4.3.10-16 from Debian Sarge is buggy concerning the SNMP v3. Is that right ?
But looking at the server load, it seems really interesting to use internal php4 snmp functions than forking snmp commands.

I already checked "Get SNMP Data" uses "SNMP" but "Get SNMP Data (Indexed)" uses "SNMP Query" - is it normal ?

Thank you in advance for help
netpoke2369
Posts: 3
Joined: Fri Apr 30, 2004 10:36 am

Post by netpoke2369 »

I have found a temporary work around by adding a regex to take out the offending 0.1 from the returned snmp value. I don't believe it is the device agent that is adding the unit label as TheWitness suggests, because I did a packet capture and the snmp reply has the return value only and I did not see this behaviour before the upgrade.

ymartin59, You wrote:
As everything was ok with previous version, I investigate the lib/snmp.php and force the use of SNMP_METHOD_BINARY => now everything works well.
How did you force the use of SNMP_METHOD_BINARY in the snmp.php module?

Thanks
ymartin59
Posts: 40
Joined: Fri Feb 17, 2006 7:42 am

Post by ymartin59 »

Well, the latest function in lib/snmp.php is designed to select the snmp method. A forced return code was enough... but then performance is worst.

function snmp_get_method($version = 1) {
return SNMP_METHOD_BINARY;
[ ... keep original content here ...]
}

I really think there is a trouble in PHP snmpX_get methods ! (Debian Sarge php 4.3.10-16)
I have done many things on my devices in trouble: disable/enable, rebuild poller cache, rescan list of partitions. During operations, a device has been corrected but another one get wrong. For the week-end, I keep binary method forced and I will do another try with php snmp methods later...
User avatar
TheWitness
Developer
Posts: 17007
Joined: Tue May 14, 2002 5:08 pm
Location: MI, USA
Contact:

Post by TheWitness »

Who ever built that binary, forced those net-snmp flags, or the version they built with had those defaults. There is a section of lib/snmp.php that perform's string cleanup, maybe you should add a few more cleanup statements to suit your needs.

TheWitness
True understanding begins only when we realize how little we truly understand...

Life is an adventure, let yours begin with Cacti!

Author of dozens of Cacti plugins and customization's. Advocate of LAMP, MariaDB, IBM Spectrum LSF and the world of batch. Creator of IBM Spectrum RTM, author of quite a bit of unpublished work and most of Cacti's bugs.
_________________
Official Cacti Documentation
GitHub Repository with Supported Plugins
Percona Device Packages (no support)
Interesting Device Packages


For those wondering, I'm still here, but lost in the shadows. Yearning for less bugs. Who want's a Cacti 1.3/2.0? Streams anyone?
ymartin59
Posts: 40
Joined: Fri Feb 17, 2006 7:42 am

Post by ymartin59 »

My cacti installation only uses built-in graph for ucd/net snmp devices and there is not so much devices... I do not understand why some snmp queries fail that way.
netpoke2369
Posts: 3
Joined: Fri Apr 30, 2004 10:36 am

Post by netpoke2369 »

I found a solution to my problem of cacti not parsing the snmpget returned value correctly. I just updated my snmp.conf to turn off unit labels. I added "dontPrintUnits true" to the end of snmp.conf and the next poll of cacti it read the results correctly. :D
User avatar
TheWitness
Developer
Posts: 17007
Joined: Tue May 14, 2002 5:08 pm
Location: MI, USA
Contact:

Post by TheWitness »

That needs to go into a FAQ somewhere.

TheWitness
True understanding begins only when we realize how little we truly understand...

Life is an adventure, let yours begin with Cacti!

Author of dozens of Cacti plugins and customization's. Advocate of LAMP, MariaDB, IBM Spectrum LSF and the world of batch. Creator of IBM Spectrum RTM, author of quite a bit of unpublished work and most of Cacti's bugs.
_________________
Official Cacti Documentation
GitHub Repository with Supported Plugins
Percona Device Packages (no support)
Interesting Device Packages


For those wondering, I'm still here, but lost in the shadows. Yearning for less bugs. Who want's a Cacti 1.3/2.0? Streams anyone?
User avatar
gandalf
Developer
Posts: 22383
Joined: Thu Dec 02, 2004 2:46 am
Location: Muenster, Germany
Contact:

Post by gandalf »

pm sent to fmangeant for his HowTo
Reinhard
ymartin59
Posts: 40
Joined: Fri Feb 17, 2006 7:42 am

Post by ymartin59 »

I set this option "dontPrintUnits true" on the Debian Sarge server running cacti but I still have troubles with output parsing (I would say it is better with that optione - less errors):

11/06/2006 04:45:50 PM - CMDPHP: Poller[0] Host[65] DS[793] WARNING: Result from SNMP not valid. Partial Result:
11/06/2006 04:45:49 PM - CMDPHP: Poller[0] Host[69] DS[791] SNMP: v3: pp2sales3a, dsname: hdd_used, oid: .1.3.6.1.4.1.2021.9.1.8.3, output: U

11/06/2006 04:45:40 PM - CMDPHP: Poller[0] Host[69] DS[739] SNMP: v3: pp2sales3a, dsname: mem_cache, oid: .1.3.6.1.4.1.2021.4.15.0, output: U

11/06/2006 04:45:29 PM - CMDPHP: Poller[0] Host[69] DS[732] SNMP: v3: pp2sales3a, dsname: cpu_nice, oid: .1.3.6.1.4.1.2021.11.51.0, output: U

11/06/2006 04:40:33 PM - CMDPHP: Poller[0] Host[69] DS[736] SNMP: v3: pp2sales3a, dsname: load_15min, oid: .1.3.6.1.4.1.2021.10.1.3.3, output: U

The host is not detected as "down", and the snmpget query on the command line works. When a host is in trouble, all its DS are lacking. But only 5 hosts ( 35, 66, 69, 70, 72 ) over 70 are in failure. My hosts are identically configured !
As a result, at each poll, these 5 hosts are "recached".

Why ? Is it a bug ? I guess it comes from php-snmp 4.3.10 (Debian Sarge) because forcing the use of binary commands in lib/snmp.php solves this issue.

Thank you in advance for your help
ymartin59
Posts: 40
Joined: Fri Feb 17, 2006 7:42 am

Post by ymartin59 »

Hello,
I try to understand issues I have with 0.8.6i (refer to http://forums.cacti.net/viewtopic.php?p=82608#82608) so I'm comparing 0.8.6h and 0.8.6i

And I found that snmpbulkwalk options have changed between 0.8.6h (-O QfntUe) and 0.8.6i (-O n) in lib/snmp.php !
It may be an explanation why the "dontPrintUnits" option is required now.
Post Reply

Who is online

Users browsing this forum: No registered users and 1 guest