parent
c04a3cfcd7
commit
9058167a9e
3 changed files with 69 additions and 0 deletions
@ -0,0 +1,6 @@ |
||||
# Discover if an httpd instance is running and has mod_status available on http://127.0.0.1/server-status |
||||
# Just return {#HTTPD_STATUS_AVAILABLE} => 'yes' if found |
||||
UserParameter=httpd.discovery,/var/lib/zabbix/bin/disco_httpd |
||||
|
||||
# Stats to get |
||||
UserParameter=httpd[*],/var/lib/zabbix/bin/check_httpd -w $1 |
@ -0,0 +1,45 @@ |
||||
#!/usr/bin/env perl -w |
||||
|
||||
use strict; |
||||
use warnings; |
||||
use LWP::Simple; |
||||
use Getopt::Long; |
||||
|
||||
my $what = undef; |
||||
my $help = 0; |
||||
|
||||
GetOptions( |
||||
"what=s" => \$what, |
||||
"help" => \$help |
||||
); |
||||
|
||||
my %res = (); |
||||
my $status = get("http://127.0.0.1/server-status?auto"); |
||||
|
||||
|
||||
unless ($status){ |
||||
print 'ZBX_UNSUPPOTED'; |
||||
exit 1; |
||||
} |
||||
|
||||
foreach my $line (split(/\n/, $status)){ |
||||
my ($key, $val) = split(/:/, $line); |
||||
$key =~ s/\s/_/g; |
||||
$key = lc $key; |
||||
$val =~ s/^\s+|\s+$//g; |
||||
$res{$key} = $val; |
||||
} |
||||
|
||||
if ($help || !$what){ |
||||
print "Valid keys are:\n\n"; |
||||
print "$_\n" for keys %res; |
||||
exit 0; |
||||
} |
||||
|
||||
if (defined $res{$what}){ |
||||
print $res{$what}; |
||||
} |
||||
else{ |
||||
print 'ZBX_UNSUPPOTED'; |
||||
} |
||||
exit 0; |
@ -0,0 +1,18 @@ |
||||
#!/usr/bin/env perl -w |
||||
|
||||
use strict; |
||||
use warnings; |
||||
use LWP::Simple; |
||||
use JSON; |
||||
|
||||
my $json; |
||||
@{$json->{data}} = (); |
||||
|
||||
my $status = get('http://127.0.0.1/server-status?auto'); |
||||
|
||||
if ($status){ |
||||
push @{$json->{data}}, {"{#HTTPD_STATUS_AVAILABLE}" => 'yes'}; |
||||
} |
||||
|
||||
print to_json($json); |
||||
exit(0); |
Loading…
Reference in new issue