internal Net-Snmp error condition detected in Cacti snmp_get

Post support questions that relate to the Windows 2003/2000/XP operating systems.

Moderators: Developers, Moderators

Post Reply
Toddles18
Posts: 22
Joined: Fri Feb 20, 2009 1:28 pm

internal Net-Snmp error condition detected in Cacti snmp_get

Post by Toddles18 »

I'm seeing many lines like the following in my cacti error log.

Code: Select all

04/20/2009 04:07:09 PM - SPINE: Poller[0] ERROR: An internal Net-Snmp error condition detected in Cacti snmp_get 
I'm also seeing a ton of snmp timeouts on machines that are working just fine with my old cacti install.

A couple of questions, I read that the Microsoft SNMP agent is actually the recommended agent. How do I configure cacti to use that instead of Net-SNMP, to see if Net-SNMP is what's causing my problems?

I've tried both spine 8.7a and 8.7d beta 3 with the same results. Running it as CMD doesn't seem to cause the problems, however I can't still can't get the poller to work properly, it just sits on waiting on poller 1/1. This server is running windows 2008 which prevents me from modifying permissions directly on cmd.exe, however the user that it is executing as is a local administrator on the machine.

Please advise.




Cacti Version - 0.8.7d
Plugin Architecture - 2.4
Poller Type - Cactid v
Server Info - Windows NT 6.0
Web Server - Apache/2.2.11 (Win32) PHP/5.2.8
PHP - 5.2.8
PHP Extensions - bcmath, calendar, com_dotnet, ctype, session, filter, ftp, hash, iconv, json, odbc, pcre, Reflection, date, libxml, standard, tokenizer, zlib, SimpleXML, dom, SPL, wddx, xml, xmlreader, xmlwriter, apache2handler, gd, mysql, snmp, sockets
MySQL - 5.1.31-community
RRDTool - 1.2.26
SNMP - snmpwalk [OPTIONS] AGENT [OID]

Version: 5.4.2
Web: http://www.net-snmp.org/
Email: net-snmp-coders@lists.sourceforge.net

OPTIONS:
-h, --help display this help message
-H display configuration file directives understood
-v 1|2c|3 specifies SNMP version to use
-V, --version display package version number
SNMP Version 1 or 2c specific
-c COMMUNITY set the community string
SNMP Version 3 specific
-a PROTOCOL set authentication protocol (MD5|SHA)
-A PASSPHRASE set authentication protocol pass phrase
-e ENGINE-ID set security engine ID (e.g. 800000020109840301)
-E ENGINE-ID set context engine ID (e.g. 800000020109840301)
-l LEVEL set security level (noAuthNoPriv|authNoPriv|authPriv)
-n CONTEXT set context name (e.g. bridge1)
-u USER-NAME set security name (e.g. bert)
-x PROTOCOL set privacy protocol (DES)
-X PASSPHRASE set privacy protocol pass phrase
-Z BOOTS,TIME set destination engine boots/time
General communication options
-r RETRIES set the number of retries
-t TIMEOUT set the request timeout (in seconds)
Debugging
-d dump input/output packets in hexadecimal
-D TOKEN[,...] turn on debugging output for the specified TOKENs
(ALL gives extremely verbose debugging output)
General options
-m MIB[:...] load given list of MIBs (ALL loads everything)
-M DIR[:...] look in given list of directories for MIBs
-P MIBOPTS Toggle various defaults controlling MIB parsing:
u: allow the use of underlines in MIB symbols
c: disallow the use of "--" to terminate comments
d: save the DESCRIPTIONs of the MIB objects
e: disable errors when MIB symbols conflict
w: enable warnings when MIB symbols conflict
W: enable detailed warnings when MIB symbols conflict
R: replace MIB symbols from latest module
-O OUTOPTS Toggle various defaults controlling output display:
0: print leading 0 for single-digit hex characters
a: print all strings in ascii format
b: do not break OID indexes down
e: print enums numerically
E: escape quotes in string indices
f: print full OIDs on output
n: print OIDs numerically
q: quick print for easier parsing
Q: quick print with equal-signs
s: print only last symbolic element of OID
S: print MIB module-id plus last element
t: print timeticks unparsed as numeric integers
T: print human-readable text along with hex strings
u: print OIDs using UCD-style prefix suppression
U: don't print units
v: print values only (not OID = value)
x: print all strings in hex format
X: extended index format
-I INOPTS Toggle various defaults controlling input parsing:
b: do best/regex matching to find a MIB node
h: don't apply DISPLAY-HINTs
r: do not check values for range/type legality
R: do random access to OID labels
u: top-level OIDs must have '.' prefix (UCD-style)
s SUFFIX: Append all textual OIDs with SUFFIX before parsing
S PREFIX: Prepend all textual OIDs with PREFIX before parsing
-L LOGOPTS Toggle various defaults controlling logging:
e: log to standard error
o: log to standard output
n: don't log at all
f file: log to the specified file
s facility: log to syslog (via the specified facility)

(variants)
[EON] pri: log to standard error, output or /dev/null for level 'pri' and above
[EON] p1-p2: log to standard error, output or /dev/null for levels 'p1' to 'p2'
[FS] pri token: log to file/syslog for level 'pri' and above
[FS] p1-p2 token: log to file/syslog for levels 'p1' to 'p2'
-C APPOPTS Set various application specific behaviours:
p: print the number of variables found
i: include given OID in the search range
I: don't include the given OID, even if no results are returned
c: do not check returned OIDs are increasing
t: Display wall-clock time to complete the request
Plugins
  • Global Plugin Settings (settings - v0.5)
    PHP Network Weathermap (weathermap - v0.95b)
    Host Info (hostinfo - v0.2)
    NTop Viewer (ntop - v0.1)
    Device Monitoring (monitor - v0.8.2)
    Network Tools (tools - v0.3)
User avatar
BSOD2600
Cacti Moderator
Posts: 12171
Joined: Sat May 08, 2004 12:44 pm
Location: USA

Re: internal Net-Snmp error condition detected in Cacti snmp

Post by BSOD2600 »

Toddles18 wrote:A couple of questions, I read that the Microsoft SNMP agent is actually the recommended agent. How do I configure cacti to use that instead of Net-SNMP, to see if Net-SNMP is what's causing my problems?
Unless you've taken extra steps to install the net-snmp snmp agent, you're using the Microsoft one. I haven't used net-snmp in ages, but it should respond differently to the system mib.
Toddles18 wrote:Running it as CMD doesn't seem to cause the problems, however I can't still can't get the poller to work properly, it just sits on waiting on poller 1/1. This server is running windows 2008 which prevents me from modifying permissions directly on cmd.exe, however the user that it is executing as is a local administrator on the machine.
The cmd.exe permission problem is very likely the underlying issue here. I forgot what I did to make cacti work on Vista x64 and that issue (should go back and revisit). As you already know, regardless of your account being admin, it still doesn't run under those creds unless explicity raised. Cacti itself, invokes cmd.exe to launch rrdtool.exe, so thats why this is an issue. One broken solution is to copy cmd.exe into the cacti directory and apply the NTFS security you see fit. Of course, this opens up another hole unless you take the correct measures....
Toddles18
Posts: 22
Joined: Fri Feb 20, 2009 1:28 pm

Post by Toddles18 »

I did install Net-SNMP. How do I stop utilizing it? Do I just break the paths on the path page? Is there an .ini setting that needs to be changed? An uninstall?

Can't rename cmd.exe to copy my modified file, can't overwrite it either that I can tell. I'll work on trying to figure out how to do that.

another question I had, what's the rule of thumb as far as how many threads you have defined when running spine?
Toddles18
Posts: 22
Joined: Fri Feb 20, 2009 1:28 pm

Post by Toddles18 »

I got the permissions for CMD.exe fixed.

First you need to disable UAC, then reboot.
Then take ownership of the file.
Then you can set permissions.

it still didn't fix the problem when running as cmd though, still waiting on 2/2 pollers.

Still getting the

Code: Select all

04/21/2009 10:29:34 AM - SPINE: Poller[0] ERROR: An internal Net-Snmp error condition detected in Cacti snmp_get 
errors even though I've completely uninstalled net-snmp. Wondering if it's a spine issue? Perhaps TheWitness would have a better idea?
User avatar
BSOD2600
Cacti Moderator
Posts: 12171
Joined: Sat May 08, 2004 12:44 pm
Location: USA

Post by BSOD2600 »

Spine is a fickle beast. I strongly recommend you use the cmd.php poller until you reach the time limitations of it. yes, your issues are very likely a spine specific issue.

As for performance, the usual recommendation is
- processes = 1-2 times # of cores
- threads = 10 .. 15
at least for a start
Post Reply

Who is online

Users browsing this forum: No registered users and 2 guests