[rt-users] Still issues with Nagios Autoclose - Commit dies
Giuseppe Sollazzo
gsollazz at sgul.ac.uk
Tue Jul 5 11:07:40 EDT 2011
Hi all,
I'm experimenting with the Nagios Autoclose.
It seems I get an abort caused by a null pointer exception.
[Tue Jul 5 14:47:02 2011] [info]: Extracted type, category, host,
problem_type and problem_severity from
subject with values RECOVERY, Service, sambadev2, sambadev2_root and OK
(/opt/rt4/local/plugins/RT-Extension-Nagios/lib/RT/Action/UpdateNagiosTickets.pm:35)
[Tue Jul 5 14:47:02 2011] [error]: Scrip Commit 12 died. - Can't call
method "SetStatus" on an undefined value at
/opt/rt4/local/plugins/RT-Extension-Nagios/lib/RT/Action/UpdateNagiosTickets.pm
line 76.
Stack:
[/opt/rt4/local/plugins/RT-Extension-Nagios/lib/RT/Action/UpdateNagiosTickets.pm:76]
[/opt/rt4/sbin/../lib/RT/ScripAction.pm:232]
[/opt/rt4/sbin/../lib/RT/Scrip.pm:475]
[/opt/rt4/sbin/../lib/RT/Scrips.pm:189]
[/opt/rt4/sbin/../lib/RT/Transaction.pm:198]
[/opt/rt4/sbin/../lib/RT/Record.pm:1450]
[/opt/rt4/sbin/../lib/RT/Ticket.pm:669]
[/opt/rt4/sbin/../lib/RT/Interface/Email.pm:1495]
[/opt/rt4/share/html/REST/1.0/NoAuth/mail-gateway:61]
(/opt/rt4/sbin/../lib/RT/Scrip.pm:483)
[Tue Jul 5 14:47:02 2011] [info]: Ticket 306 created in queue 'Nagios'
by gsollazz (/opt/rt4/sbin/../lib/RT/Ticket.pm:681)
What is causing this?
I have this as my reg exp:
if ( my ( $type, $category, $host, $problem_type, $problem_severity ) =
$subject =~
m{(PROBLEM|RECOVERY|ACKNOWLEDGEMENT)\s+(Service|Host) Alert:
([^/]+)/?(.*)\s+is\s+(\w+)}i
)
#m{(PROBLEM|RECOVERY|ACKNOWLEDGEMENT)\s+alert\s+-\s+(Service|Host):
([^/]+)/?(.*)\s+is\s+(\w+)}i
#qr{(PROBLEM|RECOVERY|ACKNOWLEDGEMENT)\s+(Service|Host) Alert:
([^/]+)/?(.*)\s+is\s+(\w+)}i
{
$problem_type ||= '';
$RT::Logger->info(
"Extracted type, category, host, problem_type and problem_severity from
subject with values $type, $category, $host, $problem_type and
$problem_severity"
);
my $tickets = RT::Tickets->new( $self->CurrentUser );
$tickets->LimitQueue( VALUE => $new_ticket->Queue )
unless RT->Config->Get('NagiosSearchAllQueues');
$tickets->LimitSubject(
VALUE => "$category $host"
. ( $problem_type ? "/$problem_type" : '' ),
OPERATOR => 'LIKE',
);
my @active = RT::Queue->ActiveStatusArray();
for my $active (@active) {
$tickets->LimitStatus(
VALUE => $active,
OPERATOR => '=',
);
}
However, line 78 is just this:
my ( $ret, $msg ) = $merged_ticket->SetStatus($resolved);
So I assume somewhat it doesn't manage to merge the tickets. But why
does it fail here and not, say, when it calls "MergeInto"?
Thanks to anyone who can help,
Giuseppe
--
____________________________________
Giuseppe Sollazzo
Senior Systems Analyst
Computing Services
Information Services
St. George's, University Of London
Cranmer Terrace
London SW17 0RE
Email: gsollazz at sgul.ac.uk
Direct Dial: +44 20 8725 5160
Fax: +44 20 8725 3583
More information about the rt-users
mailing list