fix oracle long queries mode

This commit is contained in:
qgarnier 2017-07-11 13:19:42 +02:00
parent 44f2405ee3
commit 78ead59e5d
1 changed files with 12 additions and 13 deletions

View File

@ -170,8 +170,8 @@ sub manage_selection {
} }
my ($i, $current_time) = (1, time()); my ($i, $current_time) = (1, time());
while ((my $row = $self->{sql}->fetchrow_hashref())) { while ((my @row = $self->{sql}->fetchrow_array())) {
my @values = localtime($row->{sql_exec_start}); my @values = localtime($row[1]);
my $dt = DateTime->new( my $dt = DateTime->new(
year => $values[5] + 1900, year => $values[5] + 1900,
month => $values[4] + 1, month => $values[4] + 1,
@ -183,14 +183,13 @@ sub manage_selection {
); );
next if (defined($self->{option_results}->{memory}) && defined($last_time) && $last_time > $dt->epoch); next if (defined($self->{option_results}->{memory}) && defined($last_time) && $last_time > $dt->epoch);
$row->{sql_text} =~ s/(\n|\|)/-/ms if (defined($row->{sql_text})); $row[4] =~ s/(\n|\|)/-/ms if (defined($row[4]));
my $since = $row->{elapsed_time} / 1000000; my $since = $row[2] / 1000000;
$self->{alarms}->{global}->{alarm}->{$i} = { $self->{alarms}->{global}->{alarm}->{$i} = {
sql_text => $row->{sql_text}, status => $row[0],
status => $row->{status}, sql_text => defined($row[4]) ? $row[4] : '-',
sql_text => defined($row->{sql_text}) ? $row->{sql_text} : '-', username => defined($row[5]) ? $row[5] : '-',
username => defined($row->{username}) ? $row->{username} : '-',
since => $since, since => $since,
generation_time => centreon::plugins::misc::change_seconds(value => $since) }; generation_time => centreon::plugins::misc::change_seconds(value => $since) };
$i++; $i++;