fix mssql

This commit is contained in:
garnier-quentin 2020-07-07 10:03:22 +02:00
parent 772c2005ac
commit c6d4c40e99
3 changed files with 9 additions and 16 deletions

View File

@ -58,7 +58,7 @@ sub new {
$options{options}->add_help(package => __PACKAGE__, sections => 'DBI OPTIONS', once => 1); $options{options}->add_help(package => __PACKAGE__, sections => 'DBI OPTIONS', once => 1);
$self->{output} = $options{output}; $self->{output} = $options{output};
$self->{custommode_name} = $options{custommode_name}; $self->{sqlmode_name} = $options{sqlmode_name};
$self->{instance} = undef; $self->{instance} = undef;
$self->{statement_handle} = undef; $self->{statement_handle} = undef;
$self->{version} = undef; $self->{version} = undef;
@ -100,22 +100,17 @@ sub handle_ALRM {
$self->{output}->exit(); $self->{output}->exit();
} }
# Method to manage multiples
sub set_options { sub set_options {
my ($self, %options) = @_; my ($self, %options) = @_;
# options{options_result}
$self->{option_results} = $options{option_results}; $self->{option_results} = $options{option_results};
} }
# Method to manage multiples
sub set_defaults { sub set_defaults {
my ($self, %options) = @_; my ($self, %options) = @_;
# options{default}
# Manage default value
foreach (keys %{$options{default}}) { foreach (keys %{$options{default}}) {
if ($_ eq $self->{custommode_name}) { if ($_ eq $self->{sqlmode_name}) {
for (my $i = 0; $i < scalar(@{$options{default}->{$_}}); $i++) { for (my $i = 0; $i < scalar(@{$options{default}->{$_}}); $i++) {
foreach my $opt (keys %{$options{default}->{$_}[$i]}) { foreach my $opt (keys %{$options{default}->{$_}[$i]}) {
if (!defined($self->{option_results}->{$opt}[$i])) { if (!defined($self->{option_results}->{$opt}[$i])) {
@ -129,8 +124,6 @@ sub set_defaults {
sub check_options { sub check_options {
my ($self, %options) = @_; my ($self, %options) = @_;
# return 1 = ok still data_source
# return 0 = no data_source left
$self->{data_source} = (defined($self->{option_results}->{data_source})) ? shift(@{$self->{option_results}->{data_source}}) : undef; $self->{data_source} = (defined($self->{option_results}->{data_source})) ? shift(@{$self->{option_results}->{data_source}}) : undef;
$self->{username} = (defined($self->{option_results}->{username})) ? shift(@{$self->{option_results}->{username}}) : undef; $self->{username} = (defined($self->{option_results}->{username})) ? shift(@{$self->{option_results}->{username}}) : undef;

View File

@ -45,7 +45,7 @@ sub new {
} }
); );
$self->{version} = '1.0'; $self->{version} = '1.0';
%{$self->{modes}} = (); $self->{modes} = {};
$self->{sql_modes} = { 'dbi' => 'centreon::plugins::dbi' }; $self->{sql_modes} = { 'dbi' => 'centreon::plugins::dbi' };
$self->{default} = undef; $self->{default} = undef;
$self->{sqldefault} = {}; $self->{sqldefault} = {};
@ -100,7 +100,7 @@ sub init {
$self->{sqlmode_current} = $self->{sql_modes}->{$self->{sqlmode_name}}->new( $self->{sqlmode_current} = $self->{sql_modes}->{$self->{sqlmode_name}}->new(
options => $self->{options}, options => $self->{options},
output => $self->{output}, output => $self->{output},
custommode_name => $self->{custommode_name}, sqlmode_name => $self->{sqlmode_name},
mode_name => $self->{mode_name} mode_name => $self->{mode_name}
); );
} else { } else {

View File

@ -31,7 +31,7 @@ sub new {
bless $self, $class; bless $self, $class;
$self->{version} = '0.1'; $self->{version} = '0.1';
%{$self->{modes}} = ( $self->{modes} = {
'backup-age' => 'database::mssql::mode::backupage', 'backup-age' => 'database::mssql::mode::backupage',
'blocked-processes' => 'database::mssql::mode::blockedprocesses', 'blocked-processes' => 'database::mssql::mode::blockedprocesses',
'cache-hitratio' => 'database::mssql::mode::cachehitratio', 'cache-hitratio' => 'database::mssql::mode::cachehitratio',
@ -46,10 +46,10 @@ sub new {
'page-life-expectancy' => 'database::mssql::mode::pagelifeexpectancy', 'page-life-expectancy' => 'database::mssql::mode::pagelifeexpectancy',
'sql' => 'centreon::common::protocols::sql::mode::sql', 'sql' => 'centreon::common::protocols::sql::mode::sql',
'sql-string' => 'centreon::common::protocols::sql::mode::sqlstring', 'sql-string' => 'centreon::common::protocols::sql::mode::sqlstring',
'transactions' => 'database::mssql::mode::transactions', 'transactions' => 'database::mssql::mode::transactions'
); };
$self->{sql_modes}{dbi} = 'database::mssql::dbi'; $self->{sql_modes}->{dbi} = 'database::mssql::dbi';
return $self; return $self;
} }