[Nagiosplug-help] How to get NSCA running? Any HOWTO's out there?

Hastings, Spencer Spencer.Hastings at safelite.com
Wed Feb 16 10:47:17 CET 2005


I'm running into issues trying to get NSCA up and running. I looked through
the archives and saw a few posts that deal with what looks to me like the
same issue, but no response that actually makes things click.

I'm trying to run a utility, any utility, in this case though I am using
check_disk on another node and send back the results via NSCA. (I'm using
this over NRPE or check_by_ssh because eventually I will need applications
to submit their results back to the master-server if they encounter an
error. So I thought testing a simple Nagios plugin and sending back the
results would be fine to test it).

So this is a passive check test.

I read the notes, compiled the mcrypt libraries, and then compiled the NSCA
plugin. I set the passwords and encryption level, configured NSCA to run a a
daemon. Made the nsca_send client, populated it, etc. No issues.

I turned on check_external_commands in the nagios.cfg file.. no issue there
either.

So I run this on my remote host by manual execution and format it and pipe
it into NSCA.. 
My line basically looks like this : 

testserver1 check_remote_disk 1 DISK CRITICAL - free space: /usr 93 MB
(5%);| /usr=1636MB;1209;1555;0;1728

cat bob|./send_nsca -H xx.xx.xx.xx -p 5667 -c send_nsca.cfg
And its accepted after my formatting.. : 1 data packet(s) sent to host
successfully.

It appears in my $NAGIOS/rw/nagios.cmd dir : [1108561917]
PROCESS_HOST_CHECK_RESULT;testserver1 check_remote_disk;1;DISK CRITICAL -
free space: /usr 93 MB (5%);| /usr=1636MB;1209;1555;0;1728

In the Nagios log file on the master server I get : 

[1108559934] Warning: Unrecognized external command ->
PROCESS_HOST_CHECK_RESULT;testserver1 check_remote_disk;1;DISK CRITICAL -
free space: /usr 93 MB (5%);| /usr=1636MB;1209;1555;0;1728

I define a passive service template in services.cfg.

define service{
        name                            generic-service-passive ; The 'name'
of this service template
        active_checks_enabled           0       ; Active service checks are
enabled
        passive_checks_enabled          1       ; Passive service checks are
enabled/accepted
        parallelize_check               1       ; Active service checks
should be parallelized 
        obsess_over_service             1       ; We should obsess over this
service (if necessary)
        check_freshness                 0       ; Default is to NOT check
service 'freshness'
        notifications_enabled           1       ; Service notifications are
enabled
        event_handler_enabled           1       ; Service event handler is
enabled
        flap_detection_enabled          1       ; Flap detection is enabled
        process_perf_data               1       ; Process performance data
        retain_status_information       1       ; Retain status information
across program restarts
        retain_nonstatus_information    1       ; Retain non-status
information across program restarts
        register                        0       ; TEMPLATE, DO NOT REGISTER!
        }

I define utility2 as a valid machine with this template..  but I'm having
some difficulty figuring out "how" to define this. (assuming the template I
have above is even right)

define service{
        use    generic-service-passive

        host_name   testserver1
        service_description  check_remote_disk
        is_volatile   0
        check_period   24x7
        max_check_attempts  3
        normal_check_interval  5
        retry_check_interval  1
        contact_groups   aixadmin
        notification_interval  120
        notification_period  24x7
        notification_options  w,u,c,r
        check_command   check_disk  <--- what should this be?
        }

[1108561237] Warning: Unrecognized external command ->
PROCESS_HOST_CHECK_RESULT;utility2 check_remote_disk;1;DISK CRITICAL - free
space: /usr 93 MB (5%);| /usr=1636MB;1209;1555;0;1728

I'm not sure what all I need to do here.

I've tried multiple ways to define the service including putting it into
checkcommands.cfg and then redoing the entry : 
define service{
        use    generic-service-passive

        host_name   utility2
        service_description  check_remote_disk
        is_volatile   0
        check_period   24x7
        max_check_attempts  3
        normal_check_interval  5
        retry_check_interval  1
        contact_groups   aixadmin
        notification_interval  120
        notification_period  24x7
        notification_options  w,u,c,r
        check_command   check_remote_disk
        }

I've tried adding the check_remote_disk command to the checkcommands.cfg
file as well...

# 'check_remote_disk' command definition
define command{
        command_name    check_remote_disk
        command_line    $USER$/check_disk -w $ARG1$ -c $ARG2$ -p $ARG3$
        }

I'm kind of puzzled as to how I make the nagios server process what is in
that external commands file.. I know that its making it there and its
getting inserted. The documentation says you have to define a service with
it.. but it doesn't say very much on "how" to do that. I tried looking for
some howto's on this subject, but none of them seem to address this. I tried
to drop the whole "check_command" stanza but Nagios didn't like that at all.
(I'm not sure why I would need to have it though since I already passed it
the return code for critical... and all it needs to do is put it into
nagios. In fact if I code this into an application, it is definately not
going to have the "agent" on the master server to even corrolate with, so I
shouldn't need anything in checkcommands.cfg.. by my thinking).

... on another note...
The send_nsca command lists 2 ways of sending checks : 

	Service Checks:
	
<host_name>[tab]<svc_description>[tab]<return_code>[tab]<plugin_output>[newl
ine]

	Host Checks:
	<host_name>[tab]<return_code>[tab]<plugin_output>[newline]

I'm not sure what the difference is... 

Any help/wisdom/howto info you could drop upon me would be much appreciated!


-Spencer



***********************************************************************
This message, including any attachments, may contain
confidential information intended for a specific individual
and purpose, and may be protected by law.  If you are not
the intended recipient, please notify the sender by e-mail
or telephone immediately, and then immediately delete this
message.  Any disclosure, copying or distribution of this
message, or the taking of any action based on it, by any
unintended recipient is strictly prohibited.

Checked by the Safelite e-mail scanner which may have
resulted in the attachments being modified or removed.
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <https://www.monitoring-plugins.org/archive/help/attachments/20050216/f8b5eb9a/attachment.html>


More information about the Help mailing list