Install Check_HTTP_Content

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.
User avatar
t3dus
Posts: 161
Joined: Thu Feb 04, 2016 3:46 pm
Location: IA
Contact:

Re: Install Check_HTTP_Content

Post by t3dus »

I added these 3 commands to commands.cfg

Code: Select all

define command {
    command_name   SG_URL
    command_line    check_http -H snapgeek.com -S -u https://snapgeek.com/meet-matt/
}

define command {
    command_name   SG_SSL
    command_line    check_http -H 198.54.116.191 -S
}

define command {
    command_name   SG_SSL_CERT
    command_line    check_http -H snapgeek.com -C 365
}
and added this to the host file..

Code: Select all

define service{
        use                             generic-service         ; Name of service template to use
        host_name                       snapgeek.com
        service_description             URL
        check_command                   SG_URL
        notifications_enabled           1
        }

define service{
        use                             generic-service         ; Name of service template to use
        host_name                       snapgeek.com
        service_description             SSL
        check_command                   SG_SSL
        notifications_enabled           1
        }

define service{
        use                             generic-service         ; Name of service template to use
        host_name                       snapgeek.com
        service_description             Cert Age
        check_command                   SG_SSL_CERT
        notifications_enabled           1
        }
but all 3 result in the error

Code: Select all

(No output on stdout) stderr: execvp(check_http, ...) failed. errno is 2: No such file or directory 
dwhitfield
Former Nagios Staff
Posts: 4583
Joined: Wed Sep 21, 2016 10:29 am
Location: NoLo, Minneapolis, MN
Contact:

Re: Install Check_HTTP_Content

Post by dwhitfield »

Try the following: /usr/local/nagios/libexec/check_http -H snapgeek.com -u https://snapgeek.com/meet-matt/

Assuming that works, use that pattern for the others.

I'm assuming libexec because you compiled, but if your plugins are in a different directory you'll need to use whatever directory you used.
User avatar
t3dus
Posts: 161
Joined: Thu Feb 04, 2016 3:46 pm
Location: IA
Contact:

Re: Install Check_HTTP_Content

Post by t3dus »

dwhitfield wrote:Try the following: /usr/local/nagios/libexec/check_http -H snapgeek.com -u https://snapgeek.com/meet-matt/

Assuming that works, use that pattern for the others.

I'm assuming libexec because you compiled, but if your plugins are in a different directory you'll need to use whatever directory you used.
Returned the following

Code: Select all

# /usr/local/nagios/etc/objects# /usr/local/nagios/libexec/check_http -H snapgeek.com -u https://snapgeek.com/meet-matt/
HTTP OK: HTTP/1.1 301 Moved Permanently - 344 bytes in 0.776 second response time |time=0.775873s;;;0.000000 size=344B;;;0
dwhitfield
Former Nagios Staff
Posts: 4583
Joined: Wed Sep 21, 2016 10:29 am
Location: NoLo, Minneapolis, MN
Contact:

Re: Install Check_HTTP_Content

Post by dwhitfield »

Looks like it worked. Did you have any other questions?
User avatar
t3dus
Posts: 161
Joined: Thu Feb 04, 2016 3:46 pm
Location: IA
Contact:

Re: Install Check_HTTP_Content

Post by t3dus »

dwhitfield wrote:Looks like it worked. Did you have any other questions?
Yeah worked by that command but still shows critical error in Nagios
Attachments
sg.PNG
dwhitfield
Former Nagios Staff
Posts: 4583
Joined: Wed Sep 21, 2016 10:29 am
Location: NoLo, Minneapolis, MN
Contact:

Re: Install Check_HTTP_Content

Post by dwhitfield »

Did you change the command definitions to make what worked from the command line?

For example:

Code: Select all

define command {
    command_name   SG_URL
    command_line    /usr/local/nagios/libexec/check_http -H snapgeek.com -u https://snapgeek.com/meet-matt//
}
User avatar
t3dus
Posts: 161
Joined: Thu Feb 04, 2016 3:46 pm
Location: IA
Contact:

Re: Install Check_HTTP_Content

Post by t3dus »

dwhitfield wrote:Did you change the command definitions to make what worked from the command line?

For example:

Code: Select all

define command {
    command_name   SG_URL
    command_line    /usr/local/nagios/libexec/check_http -H snapgeek.com -u https://snapgeek.com/meet-matt//
}
Clearly I missed that part. lol. That works for the URL thing.

Though I still have two issues..
  1. I want nagios to visit the site and search for a "keyword" on the site and if it doesn't exist give an error.
  2. The SSL Cert checker doesn't work. When I run the same test command it results in the error "check_http: Invalid option - SSL is not available"
dwhitfield
Former Nagios Staff
Posts: 4583
Joined: Wed Sep 21, 2016 10:29 am
Location: NoLo, Minneapolis, MN
Contact:

Re: Install Check_HTTP_Content

Post by dwhitfield »

I'm not sure what you are trying to do with the ssl and the string, but it works for me.

Code: Select all

[root@centos6x64 libexec]# ./check_http -H snapgeek.com -s 'yourstring' -S
HTTP CRITICAL: HTTP/1.1 200 OK - string 'yourstring' not found on 'https://snapgeek.com:443/' - 36614 bytes in 1.030 second response time |time=1.030108s;;;0.000000 size=36614B;;;0
[root@centos6x64 libexec]# ./check_http -H snapgeek.com -S
HTTP OK: HTTP/1.1 200 OK - 36614 bytes in 1.027 second response time |time=1.026507s;;;0.000000 size=36614B;;;0
[root@centos6x64 libexec]# ./check_http -H snapgeek.com -s 'Take' -S
HTTP OK: HTTP/1.1 200 OK - 36614 bytes in 2.059 second response time |time=2.059498s;;;0.000000 size=36614B;;;0
[root@centos6x64 libexec]# ./check_http -V
check_http v2.0.3 (nagios-plugins 2.0.3)
User avatar
t3dus
Posts: 161
Joined: Thu Feb 04, 2016 3:46 pm
Location: IA
Contact:

Re: Install Check_HTTP_Content

Post by t3dus »

This is what I just tried and reproduced the error. part of it I stole from your line above just for fun.

Code: Select all

root@raspberrypi:/usr/local/nagios/etc/objects# /usr/local/nagios/libexec/check_http -V
check_http v2.1.1 (nagios-plugins 2.1.1)
You have a newer version than I have for starters..

Code: Select all

root@raspberrypi:/usr/local/nagios/etc/objects# /usr/local/nagios/libexec/check_http -H snapgeek.com -S
check_http: Invalid option - SSL is not available
Usage:
 check_http -H <vhost> | -I <IP-address> [-u <uri>] [-p <port>]
       [-J <client certificate file>] [-K <private key>]
       [-w <warn time>] [-c <critical time>] [-t <timeout>] [-L] [-E] [-a auth]
       [-b proxy_auth] [-f <ok|warning|critcal|follow|sticky|stickyport>]
       [-e <expect>] [-d string] [-s string] [-l] [-r <regex> | -R <case-insensitive regex>]
       [-P string] [-m <min_pg_size>:<max_pg_size>] [-4|-6] [-N] [-M <age>]
       [-A string] [-k string] [-S <version>] [--sni] [-C <warn_age>[,<crit_age>]]
       [-T <content-type>] [-j method]
dwhitfield
Former Nagios Staff
Posts: 4583
Joined: Wed Sep 21, 2016 10:29 am
Location: NoLo, Minneapolis, MN
Contact:

Re: Install Check_HTTP_Content

Post by dwhitfield »

Did you also compile the plugins? If so, looks like you may have missed the first step in our instructions apt-get install -y autoconf gcc libc6 libmcrypt-dev make libssl-dev wget bc gawk dc build-essential snmp libnet-snmp-perl gettext (which would include not using our instructions)

The instructions at https://support.nagios.com/kb/article.php?id=515 are for 2.2.0, but you might as well use those if you are going to recompile. You could just recompile check_http, but I don't believe we have pre-written instructions for that. Just ignore the NRPE instructions. The plugin instructions are after those.

If you didn't compile the plugins, I'm not sure if the repos have a way to tell it to use ssl. Probably there's not a way to just uninstall check_http from the repos, so compiling might be the way to go with those too.
Locked