diff --git a/centreon-plugins/cloud/azure/database/mariadb/mode/queries.pm b/centreon-plugins/cloud/azure/database/mariadb/mode/queries.pm deleted file mode 100644 index 548b78095..000000000 --- a/centreon-plugins/cloud/azure/database/mariadb/mode/queries.pm +++ /dev/null @@ -1,141 +0,0 @@ -# -# Copyright 2022 Centreon (http://www.centreon.com/) -# -# Centreon is a full-fledged industry-strength solution that meets -# the needs in IT infrastructure and application monitoring for -# service performance. -# -# Licensed under the Apache License, Version 2.0 (the "License"); -# you may not use this file except in compliance with the License. -# You may obtain a copy of the License at -# -# http://www.apache.org/licenses/LICENSE-2.0 -# -# Unless required by applicable law or agreed to in writing, software -# distributed under the License is distributed on an "AS IS" BASIS, -# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -# See the License for the specific language governing permissions and -# limitations under the License. -# - -package cloud::azure::database::mariadb::mode::queries; - -use base qw(cloud::azure::custom::mode); - -use strict; -use warnings; - -sub get_metrics_mapping { - my ($self, %options) = @_; - - my $metrics_mapping = { - 'queries' => { - 'output' => 'Queries', - 'label' => 'queries', - 'nlabel' => 'azmariadb.queries.count', - 'unit' => '', - 'min' => '0', - } - }; - - return $metrics_mapping; -} - -sub new { - my ($class, %options) = @_; - my $self = $class->SUPER::new(package => __PACKAGE__, %options, force_new_perfdata => 1); - bless $self, $class; - - $options{options}->add_options(arguments => { - 'filter-metric:s' => { name => 'filter_metric' }, - 'resource:s' => { name => 'resource' }, - 'resource-group:s' => { name => 'resource_group' }, - }); - - return $self; -} - -sub check_options { - my ($self, %options) = @_; - $self->SUPER::check_options(%options); - - if (!defined($self->{option_results}->{resource}) || $self->{option_results}->{resource} eq '') { - $self->{output}->add_option_msg(short_msg => 'Need to specify either --resource with --resource-group option or --resource .'); - $self->{output}->option_exit(); - } - my $resource = $self->{option_results}->{resource}; - my $resource_group = defined($self->{option_results}->{resource_group}) ? $self->{option_results}->{resource_group} : ''; - my $resource_type = $self->{option_results}->{resource_type}; - if ($resource =~ /^\/subscriptions\/.*\/resourceGroups\/(.*)\/providers\/Microsoft\.DBforMariaDB\/flexibleServers\/(.*)$/) { - $resource_group = $1; - $resource = $2; - } - - $self->{az_resource} = $resource; - $self->{az_resource_group} = $resource_group; - $self->{az_resource_type} = 'flexibleServers'; - $self->{az_resource_namespace} = 'Microsoft.DBforMariaDB'; - $self->{az_timeframe} = defined($self->{option_results}->{timeframe}) ? $self->{option_results}->{timeframe} : 900; - $self->{az_interval} = defined($self->{option_results}->{interval}) ? $self->{option_results}->{interval} : 'PT5M'; - $self->{az_aggregations} = ['Total']; - if (defined($self->{option_results}->{aggregation})) { - $self->{az_aggregations} = []; - foreach my $stat (@{$self->{option_results}->{aggregation}}) { - if ($stat ne '') { - push @{$self->{az_aggregations}}, ucfirst(lc($stat)); - } - } - } - - foreach my $metric (keys %{$self->{metrics_mapping}}) { - next if (defined($self->{option_results}->{filter_metric}) && $self->{option_results}->{filter_metric} ne '' - && $metric !~ /$self->{option_results}->{filter_metric}/); - push @{$self->{az_metrics}}, $metric; - } -} - -1; - -__END__ - -=head1 MODE - -Check Azure Database for MariaDB network usage. - -Example: - -Using resource name : - -perl centreon_plugins.pl --plugin=cloud::azure::database::mariadb::plugin --mode=queries --custommode=api ---resource= --resource-group= --aggregation='total' ---warning-queries='80' --critical-queries='90' - -Using resource id : - -perl centreon_plugins.pl --plugin=cloud::azure::integration::servicebus::plugin --mode=queries --custommode=api ---resource='/subscriptions//resourceGroups//providers/Microsoft.DBforMariaDB/servers/' ---aggregation='total' --warning-queries='80' --critical-queries='90' - -Default aggregation: 'total' / 'average', 'minimum' and 'maximum' are valid. - -=over 8 - -=item B<--resource> - -Set resource name or id (Required). - -=item B<--resource-group> - -Set resource group (Required if resource's name is used). - -=item B<--warning-queries> - -Set warning threshold for queries count. - -=item B<--critical-queries> - -Set critical threshold for queries count. - -=back - -=cut