Build precise queries to find exactly what you need
Press ESC to close
Your review has been submitted and is pending approval.
check_apache-auto.pl Fetches the 'server-status?auto' page of an apache server, extracts all information and evaluates them. This script is based on ideas from that offered on "Nagios Exchange" (http://exchange.nagios.org/components/com_mtree/attachment.php?link_id=296&cf_id=24).
Current Version
1.0
Last Release Date
2012-02-23
Owner
Robert Becht
Website
http://www.habited.net
Download URL
License
GPL
Compatible With
check_apache-auto.pl Fetches the 'server-status?auto' page of an apache server, extracts all information and evaluates them. This script is based on ideas from that offered on "Nagios Exchange" (http://exchange.nagios.org/components/com_mtree/attachment.php?link_id=296&cf_id=24). This uses the "server-status? Self" produced by the Apache server (if enabled). The script contains lines of debugging it is sufficient to enable to fit if necessary. If authentication for server access is necessary, it may be that the method is not suitable. In this case just change that part.
Hi, Unfortunately your script has problems with Apache 2.4 and, since Apache 2.4.18, can't retrieve the right data. Here the patch: --- new/check_apache_auto.pl 2016-08-29 13:33:49.398437552 +0200 +++ orig/check_apache_auto.pl 2016-08-29 13:33:35.070152746 +0200 @@ -5,6 +5,8 @@ use LWP::UserAgent; use HTTP::Request; +# WARNING: This version of the script only works with Apache 2.4.13 or higher (changes to mod_status broke the script) +# See edits on lines 172ff sub help() { print timeout(10); @@ -167,6 +171,18 @@ @recolte = split(/n/,$htmlbrut); splice (@recolte, 0, $topnbr); splice (@recolte, -$endnbr); + @recolte = grep /S/, @recolte; + +# Only lines with key: value will be used + my $recolte_index = 0; + foreach (@recolte) { + if (@recolte[$recolte_index] =~ /^.+:.+$/) { + $recolte_index++; + } else { + # remove entry if it doesn't match + splice (@recolte, $recolte_index, 1); + } + } #Debugging # print "$reqn"; @@ -252,6 +268,10 @@ %data = apache_status($server); +if(!exists $data{$mon}) +{ + $data{$mon} = 0; +} #Debugging #print "uptime=$data{'Uptime'}n"; @@ -263,10 +283,3 @@ print_result; exit; Regards
You must be logged in to submit a review.
To:
From: