Update message when no resources match

Fix cluster-name filter
This commit is contained in:
Sylvain Cresto 2025-07-16 11:02:21 +02:00
parent 8a0270bdfd
commit b0ac923307
2 changed files with 9 additions and 7 deletions

View File

@ -87,7 +87,7 @@ sub check_options {
$self->{vsphere_password} = (defined($self->{option_results}->{vsphere_password})) ? shift(@{$self->{option_results}->{vsphere_password}}) : undef;
$self->{sampling_period} = (defined($self->{option_results}->{sampling_period})) ? shift(@{$self->{option_results}->{sampling_period}}) : undef;
$self->{time_shift} = (defined($self->{option_results}->{time_shift})) ? shift(@{$self->{option_results}->{time_shift}}) : 0;
$self->{unknown_connector_status} = (defined($self->{option_results}->{unknown_connector_status})) ? $self->{option_results}->{unknown_connector_status} : '%{code} < 0 || (%{code} > 0 && %{code} < 200)';
$self->{unknown_connector_status} = (defined($self->{option_results}->{unknown_connector_status})) ? $self->{option_results}->{unknown_connector_status} : '%{code} < 0 || (%{code} > 0 && %{code} < 200 && %{short_message} !~ /ComputeResource/)';
$self->{warning_connector_status} = (defined($self->{option_results}->{warning_connector_status})) ? $self->{option_results}->{warning_connector_status} : '';
$self->{critical_connector_status} = (defined($self->{option_results}->{critical_connector_status})) ? $self->{option_results}->{critical_connector_status} : '';
$self->{case_insensitive} = (defined($self->{option_results}->{case_insensitive})) ? $self->{option_results}->{case_insensitive} : undef;
@ -148,7 +148,7 @@ sub connector_response {
sub connector_response_status {
my ($self, %options) = @_;
if (!defined($self->{result})) {
$self->{output}->add_option_msg(short_msg => 'Cannot get response (timeout received)');
$self->{output}->option_exit();
@ -269,7 +269,6 @@ sub execute {
zmq_close($self->{requester});
$self->connector_response_status();
return $self->{result};
}
@ -332,7 +331,7 @@ Searchs are case insensitive.
=item B<--unknown-connector-status>
Set unknown threshold for connector status (default: '%{code} < 0 || (%{code} > 0 && %{code} < 200)').
Set unknown threshold for connector status (default: '%{code} < 0 || (%{code} > 0 && %{code} < 200 && %{short_message} !~ /ComputeResource/)').
You can use the following variables: %{code}, %{short_message}, %{extra_message}.
=item B<--warning-connector-status>

View File

@ -125,16 +125,19 @@ sub manage_selection {
my ($self, %options) = @_;
$self->{cluster} = {};
# Required for --cluster-name to be treated as a regular expression ( refer to build_filter in centreon/vmware/cmdbase.pm )
# Applied this change here in order to avoid modifying the VMware daemon
$self->{option_results}->{filter} = '';
my $response = $options{custom}->execute(
params => $self->{option_results},
command => 'vsanclusterusage'
);
foreach my $cluster_id (keys %{$response->{data}}) {
my $cluster_name = $response->{data}->{$cluster_id}->{name};
next if ( !centreon::plugins::misc::is_empty($self->{option_results}->{cluster_name})
and $cluster_name !~ /$self->{option_results}->{cluster_name}/ );
# No need to filter here because the filter on cluster_name is already done by find_entity_views in VMware/VICommon.pm
$self->{cluster}->{$cluster_name} = {
display => $cluster_name,
%{$response->{data}->{$cluster_id}->{cluster_domcompmgr}},