plugin output ommited

Support forum for Nagios Core, Nagios Plugins, NCPA, NRPE, NSCA, NDOUtils and more. Engage with the community of users including those using the open source solutions.
amprantino
Posts: 140
Joined: Thu Apr 18, 2013 8:25 am
Location: libexec

plugin output ommited

Post by amprantino »

I am running check_mssql_health and part of the output is ommited or missing.
For example:
./check_mssql_health --server SQLSERVER --username 'domain\usernagios' --password '123456789' --mode=database-data-free --name=datanexus --commit
OK - database DataNexus has 23.74% free space left | 'db_datanexus_free_pct'=23.74%;10:;5:;0;100 'db_datanexus_free'=253505.69MB;106772.6625:;53386.3313:;0;1067726.625 'db_datanexus_allocated_pct'=81.68%;;;0;100
What I see to the nagios web interface is the OK output only and everything else is missing.
output.png
Any ideas why part of the output is missing?
scottwilkerson
DevOps Engineer
Posts: 19396
Joined: Tue Nov 15, 2011 3:11 pm
Location: Nagios Enterprises
Contact:

Re: plugin output ommited

Post by scottwilkerson »

you should verify nagios see's the same information your root user sees by running the command as nagios

Code: Select all

su nagios -c "/usr/local/nagios/libexec/check_mssql_health --server SQLSERVER --username 'domain\usernagios' --password '123456789' --mode=database-data-free --name=datanexus --commit"
Former Nagios employee
Creator:
ahumandesign.com
enneagrams.com
amprantino
Posts: 140
Joined: Thu Apr 18, 2013 8:25 am
Location: libexec

Re: plugin output ommited

Post by amprantino »

Same output as nagios user
# su nagios
$ ./check_mssql_health --server SQLSERVER --username 'domain\usernagios' --password '123456789' --mode=database-data-free --name=datanexus --commit
OK - database DataNexus has 23.70% free space left | 'db_datanexus_free_pct'=23.70%;10:;5:;0;100 'db_datanexus_free'=253059.44MB;106772.6625:;53386.3313:;0;1067726.625 'db_datanexus_allocated_pct'=81.68%;;;0;100
scottwilkerson
DevOps Engineer
Posts: 19396
Joined: Tue Nov 15, 2011 3:11 pm
Location: Nagios Enterprises
Contact:

Re: plugin output ommited

Post by scottwilkerson »

Can you show the service configuration for the service in the screenshot as well as the configuration for the command the service uses?
Former Nagios employee
Creator:
ahumandesign.com
enneagrams.com
amprantino
Posts: 140
Joined: Thu Apr 18, 2013 8:25 am
Location: libexec

Re: plugin output ommited

Post by amprantino »

Code: Select all


$USER9$=--username 'domain\usernagios' --password '123456789'

define command {
        command_name check_mssql_health
        command_line $USER1$/check_mssql_health --server $ARG1$ $USER9$ --mode $ARG2$ $ARG3$ --nooffline --commit
        }

define service{
        use                             generic-service
        host_name                       SQLSERVER 
        service_description             DB_datanexus_database-data-free
        is_volatile                     0
        check_period                    24x7
        max_check_attempts              2
        normal_check_interval           30
        retry_check_interval            2
        contact_groups                  db-admins
        notification_interval           240
        notification_period             24x7
        notification_options            c,w,r,u
        check_command                   check_mssql_health!SQLSERVER!database-data-free!--name datanexus
}
scottwilkerson
DevOps Engineer
Posts: 19396
Joined: Tue Nov 15, 2011 3:11 pm
Location: Nagios Enterprises
Contact:

Re: plugin output ommited

Post by scottwilkerson »

This all looks correct, the next thing I would suggest would be to turn on nagios debug log in the nagios.cfg and see if you can see what is being received when the command is run
Former Nagios employee
Creator:
ahumandesign.com
enneagrams.com
amprantino
Posts: 140
Joined: Thu Apr 18, 2013 8:25 am
Location: libexec

Re: plugin output ommited

Post by amprantino »

[1534411627.179617] [2048.1] [pid=215878] **** BEGIN MACRO PROCESSING ***********
[1534411627.179629] [2048.1] [pid=215878] Processing: '$USER1$/check_mssql_health --server $ARG1$ $USER9$ --mode $ARG2$ $ARG3$ --nooffline --commit'
[1534411627.179660] [2048.1] [pid=215878] Done. Final output: '/usr/local/nagios/libexec/check_mssql_health --server SQLSERVER --username 'XXXXXXXX' --password 'XXXXXXXXX' --mode database-backup-age --nooffline --commit'
[1534411627.179674] [2048.1] [pid=215878] **** END MACRO PROCESSING *************



[1534411627.327299] [016.0] [pid=215878] ** Handling ACTIVE async check result for service 'database-backup-age' on host 'SQLSERVER' from 'Core Worker 215895'...
[1534411627.327313] [016.1] [pid=215878] * OPTIONS: 1, SCHEDULED: 1, RESCHEDULE: 1, EXITED OK: 1, RETURN CODE: 0, OUTPUT:
OK

[1534411627.327328] [001.0] [pid=215878] get_service_check_return_code()
[1534411627.327339] [016.1] [pid=215878] Service is OK
[1534411627.327350] [016.1] [pid=215878] Service was OK at last check.
[1534411627.327360] [016.1] [pid=215878] Service is still OK.
[1534411627.327372] [001.0] [pid=215878] check_for_service_flapping()
[1534411627.327383] [016.1] [pid=215878] Checking service 'database-backup-age' on host 'SQLSERVER' for flapping...
[1534411627.327394] [016.1] [pid=215878] Service is not flapping (0.00% state change).
[1534411627.327408] [001.0] [pid=215878] check_for_host_flapping()
[1534411627.327419] [016.1] [pid=215878] Checking host 'SQLSERVER' for flapping...
[1534411627.327430] [016.1] [pid=215878] Host is not flapping (0.00% state change).
[1534411627.327468] [016.1] [pid=215878] Rescheduling next check of service at Thu Aug 16 12:57:07 2018
This is strange.
The output is OK from command line but Nagios gets just an "OK" ??
scottwilkerson
DevOps Engineer
Posts: 19396
Joined: Tue Nov 15, 2011 3:11 pm
Location: Nagios Enterprises
Contact:

Re: plugin output ommited

Post by scottwilkerson »

This is very strange.

the only thing I can this is that it is erroring somewhere when nagios runs it and we can't see the output.

Can you add the following to the end of the command and then restart nagios

Code: Select all

 2>&1
This should send any error output into standard out and maybe it will display what the problem is.
Former Nagios employee
Creator:
ahumandesign.com
enneagrams.com
amprantino
Posts: 140
Joined: Thu Apr 18, 2013 8:25 am
Location: libexec

Re: plugin output ommited

Post by amprantino »

define command {
command_name check_mssql_health_temp
command_line $USER1$/check_mssql_health --server $ARG1$ $USER9$ --mode $ARG2$ --name $ARG3$ --nooffline --commit 2>&1
}
No change :(
danjoh
Posts: 73
Joined: Mon Dec 07, 2015 10:43 am
Location: Zürich, Switzerland
Contact:

Re: plugin output ommited

Post by danjoh »

Try running the command from the command line and add "| hexdump -C" at the end to make sure there are no "special" characters that Nagios "chokes" on.

Code: Select all

su nagios
./check_mssql_health --server SQLSERVER --username 'domain\usernagios' --password '123456789' --mode=database-data-free --name=datanexus --commit 2>&1 | hexdump -C
--
D/\N
Locked