break change: option linux local

This commit is contained in:
garnier-quentin 2020-07-17 12:05:15 +02:00
parent 9ae4137daf
commit b317864de8
5 changed files with 35 additions and 95 deletions

View File

@ -140,12 +140,10 @@ sub new {
bless $self, $class; bless $self, $class;
$options{options}->add_options(arguments => { $options{options}->add_options(arguments => {
'name:s' => { name => 'name' }, 'filter-partition-name:s' => { name => 'filter_partition_name' },
'regexp' => { name => 'use_regexp' }, 'interrupt-frequency:s' => { name => 'interrupt_frequency', default => 1000 },
'regexp-isensitive' => { name => 'use_regexpi' }, 'bytes-per-sector:s' => { name => 'bytes_per_sector', default => 512 },
'interrupt-frequency:s' => { name => 'interrupt_frequency', default => 1000 }, 'skip' => { name => 'skip' }
'bytes-per-sector:s' => { name => 'bytes_per_sector', default => 512 },
'skip' => { name => 'skip' }
}); });
return $self; return $self;
@ -175,12 +173,8 @@ sub manage_selection {
while ($disk_parts =~ /^\s*\S+\s+\S+\s+(\S+)\s+\S+\s+\S+\s+(\S+)\s+(\S+)\s+\S+\s+\S+\s+(\S+)\s+(\S+)\s+\S+\s+\S+\s+(\S+)\s*/msg) { while ($disk_parts =~ /^\s*\S+\s+\S+\s+(\S+)\s+\S+\s+\S+\s+(\S+)\s+(\S+)\s+\S+\s+\S+\s+(\S+)\s+(\S+)\s+\S+\s+\S+\s+(\S+)\s*/msg) {
my ($partition_name, $read_sector, $write_sector, $read_ms, $write_ms, $ms_ticks) = ($1, $2, $4, $3, $5, $6); my ($partition_name, $read_sector, $write_sector, $read_ms, $write_ms, $ms_ticks) = ($1, $2, $4, $3, $5, $6);
next if (defined($self->{option_results}->{name}) && defined($self->{option_results}->{use_regexp}) && defined($self->{option_results}->{use_regexpi}) next if (defined($self->{option_results}->{filter_partition_name}) && $self->{option_results}->{filter_partition_name} ne '' &&
&& $partition_name !~ /$self->{option_results}->{name}/i); $partition_name !~ /$self->{option_results}->{filter_partition_name}/);
next if (defined($self->{option_results}->{name}) && defined($self->{option_results}->{use_regexp}) && !defined($self->{option_results}->{use_regexpi})
&& $partition_name !~ /$self->{option_results}->{name}/);
next if (defined($self->{option_results}->{name}) && !defined($self->{option_results}->{use_regexp}) && !defined($self->{option_results}->{use_regexpi})
&& $partition_name ne $self->{option_results}->{name});
if (defined($self->{option_results}->{skip}) && $read_sector == 0 && $write_sector == 0) { if (defined($self->{option_results}->{skip}) && $read_sector == 0 && $write_sector == 0) {
$self->{output}->output_add(long_msg => "skipping device '" . $partition_name . "': no read/write IO.", debug => 1); $self->{output}->output_add(long_msg => "skipping device '" . $partition_name . "': no read/write IO.", debug => 1);
@ -213,7 +207,7 @@ sub manage_selection {
$self->{cache_name} = 'cache_linux_local_' . $options{custom}->get_identifier() . '_' . $self->{mode} . '_' . $self->{cache_name} = 'cache_linux_local_' . $options{custom}->get_identifier() . '_' . $self->{mode} . '_' .
(defined($self->{option_results}->{filter_counters}) ? md5_hex($self->{option_results}->{filter_counters}) : md5_hex('all')) . '_' . (defined($self->{option_results}->{filter_counters}) ? md5_hex($self->{option_results}->{filter_counters}) : md5_hex('all')) . '_' .
(defined($self->{option_results}->{name}) ? md5_hex($self->{option_results}->{name}) : md5_hex('all')); (defined($self->{option_results}->{filter_partition_name}) ? md5_hex($self->{option_results}->{filter_partition_name}) : md5_hex('all'));
} }
1; 1;
@ -276,17 +270,9 @@ Thresholds.
Can be: 'read-usage', 'write-usage', 'read-time', 'write-time', Can be: 'read-usage', 'write-usage', 'read-time', 'write-time',
'utils'. 'utils'.
=item B<--name> =item B<--filter-partition-name>
Set the partition name (empty means 'check all partitions') Filter partition name (regexp can be used).
=item B<--regexp>
Allows to use regexp to filter partition name (with option --name).
=item B<--regexp-isensitive>
Allows to use regexp non case-sensitive (with --regexp).
=item B<--bytes-per-sector> =item B<--bytes-per-sector>

View File

@ -123,7 +123,7 @@ Threshold critical in percent.
=item B<--filter-mountpoint> =item B<--filter-mountpoint>
Filter filesystem (regexp can be used). Filter filesystem mount point (regexp can be used).
=item B<--filter-type> =item B<--filter-type>

View File

@ -128,14 +128,12 @@ sub new {
bless $self, $class; bless $self, $class;
$options{options}->add_options(arguments => { $options{options}->add_options(arguments => {
'filter-state:s' => { name => 'filter_state', }, 'filter-state:s' => { name => 'filter_state', },
'name:s' => { name => 'name' }, 'filter-interface:s' => { name => 'filter_interface' },
'regexp' => { name => 'use_regexp' }, 'no-loopback' => { name => 'no_loopback', },
'regexp-isensitive' => { name => 'use_regexpi' }, 'unknown-status:s' => { name => 'unknown_status', default => '' },
'no-loopback' => { name => 'no_loopback', }, 'warning-status:s' => { name => 'warning_status', default => '' },
'unknown-status:s' => { name => 'unknown_status', default => '' }, 'critical-status:s' => { name => 'critical_status', default => '%{status} ne "RU"' }
'warning-status:s' => { name => 'warning_status', default => '' },
'critical-status:s' => { name => 'critical_status', default => '%{status} ne "RU"' }
}); });
return $self; return $self;
@ -197,14 +195,9 @@ sub do_selection {
next if (defined($self->{option_results}->{no_loopback}) && $values =~ /LOOPBACK/ms); next if (defined($self->{option_results}->{no_loopback}) && $values =~ /LOOPBACK/ms);
next if (defined($self->{option_results}->{filter_state}) && $self->{option_results}->{filter_state} ne '' && next if (defined($self->{option_results}->{filter_state}) && $self->{option_results}->{filter_state} ne '' &&
$states !~ /$self->{option_results}->{filter_state}/); $states !~ /$self->{option_results}->{filter_state}/);
next if (defined($self->{option_results}->{filter_interface}) && $self->{option_results}->{filter_interface} ne '' &&
next if (defined($self->{option_results}->{name}) && defined($self->{option_results}->{use_regexp}) && defined($self->{option_results}->{use_regexpi}) $interface_name !~ /$self->{option_results}->{filter_interface}/);
&& $interface_name !~ /$self->{option_results}->{name}/i);
next if (defined($self->{option_results}->{name}) && defined($self->{option_results}->{use_regexp}) && !defined($self->{option_results}->{use_regexpi})
&& $interface_name !~ /$self->{option_results}->{name}/);
next if (defined($self->{option_results}->{name}) && !defined($self->{option_results}->{use_regexp}) && !defined($self->{option_results}->{use_regexpi})
&& $interface_name ne $self->{option_results}->{name});
$self->{interface}->{$interface_name} = { $self->{interface}->{$interface_name} = {
display => $interface_name, display => $interface_name,
@ -300,17 +293,9 @@ in-error, out-error, in-discard, out-discard
Threshold critical in percent of total packets. Can be: Threshold critical in percent of total packets. Can be:
in-error, out-error, in-discard, out-discard in-error, out-error, in-discard, out-discard
=item B<--name> =item B<--filter-interface>
Set the interface name (empty means 'check all interfaces') Filter interface name (regexp can be used).
=item B<--regexp>
Allows to use regexp to filter storage mount point (with option --name).
=item B<--regexp-isensitive>
Allows to use regexp non case-sensitive (with --regexp).
=item B<--filter-state> =item B<--filter-state>

View File

@ -129,12 +129,9 @@ sub new {
$options{options}->add_options(arguments => { $options{options}->add_options(arguments => {
'filter-type:s' => { name => 'filter_type', }, 'filter-type:s' => { name => 'filter_type', },
'filter-fs:s' => { name => 'filter_fs', }, 'filter-fs:s' => { name => 'filter_fs', },
'filter-mountpoint:s' => { name => 'filter_mountpoint' },
'units:s' => { name => 'units', default => '%' }, 'units:s' => { name => 'units', default => '%' },
'free' => { name => 'free' }, 'free' => { name => 'free' }
'name:s' => { name => 'name' },
'regexp' => { name => 'use_regexp' },
'regexp-isensitive' => { name => 'use_regexpi' },
'space-reservation:s' => { name => 'space_reservation' }
}); });
return $self; return $self;
@ -156,16 +153,11 @@ sub manage_selection {
my ($fs, $type, $size, $used, $available, $percent, $mount) = ($1, $2, $3, $4, $5, $6, $7); my ($fs, $type, $size, $used, $available, $percent, $mount) = ($1, $2, $3, $4, $5, $6, $7);
next if (defined($self->{option_results}->{filter_fs}) && $self->{option_results}->{filter_fs} ne '' && next if (defined($self->{option_results}->{filter_fs}) && $self->{option_results}->{filter_fs} ne '' &&
$fs !~ /$self->{option_results}->{filter_fs}/); $fs !~ /$self->{option_results}->{filter_fs}/);
next if (defined($self->{option_results}->{filter_type}) && $self->{option_results}->{filter_type} ne '' && next if (defined($self->{option_results}->{filter_type}) && $self->{option_results}->{filter_type} ne '' &&
$type !~ /$self->{option_results}->{filter_type}/); $type !~ /$self->{option_results}->{filter_type}/);
next if (defined($self->{option_results}->{filter_mountpoint}) && $self->{option_results}->{filter_mountpoint} ne '' &&
next if (defined($self->{option_results}->{name}) && defined($self->{option_results}->{use_regexp}) && defined($self->{option_results}->{use_regexpi}) $mount !~ /$self->{option_results}->{filter_mountpoint}/);
&& $mount !~ /$self->{option_results}->{name}/i);
next if (defined($self->{option_results}->{name}) && defined($self->{option_results}->{use_regexp}) && !defined($self->{option_results}->{use_regexpi})
&& $mount !~ /$self->{option_results}->{name}/);
next if (defined($self->{option_results}->{name}) && !defined($self->{option_results}->{use_regexp}) && !defined($self->{option_results}->{use_regexpi})
&& $mount ne $self->{option_results}->{name});
$size *= 1024; $size *= 1024;
if (defined($self->{option_results}->{space_reservation})) { if (defined($self->{option_results}->{space_reservation})) {
@ -211,17 +203,9 @@ Units of thresholds (Default: '%') ('%', 'B').
Thresholds are on free space left. Thresholds are on free space left.
=item B<--name> =item B<--filter-mountpoint>
Set the storage mount point (empty means 'check all storages') Filter filesystem mount point (regexp can be used).
=item B<--regexp>
Allows to use regexp to filter storage mount point (with option --name).
=item B<--regexp-isensitive>
Allows to use regexp non case-sensitive (with --regexp).
=item B<--filter-type> =item B<--filter-type>

View File

@ -137,10 +137,8 @@ sub new {
$options{options}->add_options(arguments => { $options{options}->add_options(arguments => {
'filter-state:s' => { name => 'filter_state', }, 'filter-state:s' => { name => 'filter_state', },
'filter-interface:s' => { name => 'filter_interface' },
'units:s' => { name => 'units', default => 'b/s' }, 'units:s' => { name => 'units', default => 'b/s' },
'name:s' => { name => 'name' },
'regexp' => { name => 'use_regexp' },
'regexp-isensitive' => { name => 'use_regexpi' },
'speed:s' => { name => 'speed' }, 'speed:s' => { name => 'speed' },
'no-loopback' => { name => 'no_loopback', }, 'no-loopback' => { name => 'no_loopback', },
'unknown-status:s' => { name => 'unknown_status', default => '' }, 'unknown-status:s' => { name => 'unknown_status', default => '' },
@ -205,14 +203,9 @@ sub do_selection {
next if (defined($self->{option_results}->{no_loopback}) && $values =~ /LOOPBACK/ms); next if (defined($self->{option_results}->{no_loopback}) && $values =~ /LOOPBACK/ms);
next if (defined($self->{option_results}->{filter_state}) && $self->{option_results}->{filter_state} ne '' && next if (defined($self->{option_results}->{filter_state}) && $self->{option_results}->{filter_state} ne '' &&
$states !~ /$self->{option_results}->{filter_state}/); $states !~ /$self->{option_results}->{filter_state}/);
next if (defined($self->{option_results}->{filter_interface}) && $self->{option_results}->{filter_interface} ne '' &&
next if (defined($self->{option_results}->{name}) && defined($self->{option_results}->{use_regexp}) && defined($self->{option_results}->{use_regexpi}) $interface_name !~ /$self->{option_results}->{filter_interface}/);
&& $interface_name !~ /$self->{option_results}->{name}/i);
next if (defined($self->{option_results}->{name}) && defined($self->{option_results}->{use_regexp}) && !defined($self->{option_results}->{use_regexpi})
&& $interface_name !~ /$self->{option_results}->{name}/);
next if (defined($self->{option_results}->{name}) && !defined($self->{option_results}->{use_regexp}) && !defined($self->{option_results}->{use_regexpi})
&& $interface_name ne $self->{option_results}->{name});
$self->{interface}->{$interface_name} = { $self->{interface}->{$interface_name} = {
display => $interface_name, display => $interface_name,
@ -294,17 +287,9 @@ Can used special variables like: %{status}, %{display}
Units of thresholds (Default: 'b/s') ('%', 'b/s'). Units of thresholds (Default: 'b/s') ('%', 'b/s').
Percent can be used only if --speed is set. Percent can be used only if --speed is set.
=item B<--name> =item B<--filter-interface>
Set the interface name (empty means 'check all interfaces') Filter interface name (regexp can be used).
=item B<--regexp>
Allows to use regexp to filter intefaces (with option --name).
=item B<--regexp-isensitive>
Allows to use regexp non case-sensitive (with --regexp).
=item B<--filter-state> =item B<--filter-state>