gpt4 book ai didi

perl - 如何从 Nagios-Report Perl 模块打印出 Nagios 服务 UP 时间百分比

转载 作者:行者123 更新时间:2023-12-04 01:32:40 26 4
gpt4 key购买 nike

我可以打印出主持人Nagios-Report Perl Module 开始的时间百分比使用以下代码:

#!/usr/bin/perl
use strict ;
use Nagios::Report ;
my $x = Nagios::Report->new(q<local_cgi localhost nagiosadmin>)
or die "Can't construct Nagios::Report object." ;
$x->mkreport(
[ qw(HOST_NAME PERCENT_TOTAL_TIME_UP) ],

sub {
my %F = @_; my $u = $F{PERCENT_TOTAL_TIME_UP}; $u =~ s/%//;
},
0,

sub {
my $F = shift @_ ;
}
) ;
$x->debug_dump ;

但是我怎么才能打印出 服务 UP 时间百分比?我的意思是只输出百分比值。

我尝试了很多选择,但无法做到正确。

最佳答案

这将生成服务正常运行时间报告,但我怎样才能只检索正常运行时间百分比值而不是完整报告?

#!/usr/bin/perl
use strict ;

use Nagios::Report ;

my $x = Nagios::Report->new(
# Data source
q<local_cgi localhost nagiosadmin>,
# Report period
[ qw(24x7) ],
# Time period
'last7days',
# Service report
1,
# Pre-filter
sub { my %F = @_; my $u = $F{PERCENT_TOTAL_TIME_OK}; $u =~ s/%//; $u < 100 }
)
or die "Can't construct Nagios::Report object." ;

$x->mkreport(
[
qw(
HOST_NAME
PERCENT_TOTAL_TIME_OK
DOWN
UP
OUTAGE
)
],

sub { my %F = @_; my $u = $F{PERCENT_TOTAL_TIME_OK}; $u =~ s/%//; $u < 100 },

undef,

undef,

1,

) ;

$x->debug_dump() ;

关于perl - 如何从 Nagios-Report Perl 模块打印出 Nagios 服务 UP 时间百分比,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14281396/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com