NSClient++ Help (#1) - We cant handle 15 arguments so you wont get argList her (#801) - Message List
Here's the command:
/usr/local/nagios/libexec/check_nrpe -H GDJSAC303 -p 56660 -t 30 -c checkEventLog -a filter=new filter+generated=\<30m file=System "filter+eventSource=regexp:(Foundation Agents)" filter+eventType==error MaxWarn=1 MaxCrit=1 descriptions "syntax=Source: %source% - Type: %type% - EventID: %id% - Description: %message% - Time: %generated%" truncate=300 filter=in filter=all unique
I'm getting back:
"Source: Foundation Agents - Type: error - EventID: 1172 - Description: We cant handle 15 arguments so you wont get argList her - Time: Sunday, May 08, 2011 01:09:19, eventlog: 1 > critical|'eventlog'=1;1;1; 512"
Why is my message "We cant handle 15 arguments so you wont get argList her"?
I found this: http://www.nsclient.org/nscp/discussion/topic/579
Which states that the error message will be lost because only 11 arguments can be handled. What are these arguments? Where are they at exactly?
I NEED to retrieve the error message as I have to do a regex on it! Do I need to modify the command above or something?
Thanks in advance for any help or hints.
-Timthephpguy06/06/11 16:22:35 (2 years ago)
The message is most likely not needed at all as it is "always the same" the data is stored in the strings parameter.
Anyways, this is the rendering of messages which is implemented "badly" as there is no (that I know of) simple way to handle it automatically.
This will most likely "not be fixed" unless someone know how.
Michael Medinmickem06/13/11 16:57:15 (2 years ago)
No one? It's very important that I be able to return this message.
Any hints or clues please? I'm at a loss right now!
Frankly i don't know what the "arguments" even are?!?! Where do we have 15 arguments? Are these arguments returned from the Event Log query or something?
Why does NSClient only handle 11 of these arguments? Should it not recursively handle all?thephpguy06/07/11 16:35:09 (2 years ago)
Hey guys looks like version 0.3.7 is running on some of the servers.......just took a look at the source code in 0.3.9 and it appears that a good number of arguments are handled. (more than I need right now.) I'll see if I can get my systems admins to upgrade there instances of NSClient.
If this fixes it I'll report back here. =)thephpguy06/07/11 17:17:11 (2 years ago)
Thank you sir.
Michael: Thanks for increasing argument handling! May I suggest a variable within the variable to handle this? Like %strings% called %messageargN%, where N is the argument number. It's quite clear they are being counted.
Since %strings% contains the volatile data, and nothing that's revealed by CheckEventLogs? contains the arguments, a facility that would simply handle the args would be great. Or, forget about counting and parsing args entirely, just sterilize the %message% and make it a single string (%messageraw%).
Also, why in the world hasn't .3.9x been pushed to sourceforge? This site has been really unstable lately (for instance, right now I can't grab the installer).
Mattmbrownnyc08/29/11 20:14:14 (21 months ago)
Sorry... I have forgotten to push to sourceforge, shall to tonight.
As for variable arguments the problem is the API I am using requires me to write *code* for each "number" of arguments which is why I have limited myself to 15 I can increase it more, but I shall see if there is a better API I can use so this will not be necessary...
Michael Medinmickem08/30/11 09:22:51 (21 months ago)
Has this parsing code been changed, or extended in the 0.4+ releases of NSClient?
If it still has a limitation, of 11 or 15 arguments, is it something that could be easily changed if I were to volunteer to work on the source of the relevant module to add support for more arguments?
We regularly get event log entries with 20 or even 30 arguments, so cannot see what they are from the alerts sent out by Opsview, which we use to check for errors across our servers.rutthenut11/08/12 17:39:52 (7 months ago)