@@ -, +, @@ --- C4/SIP/SIPServer.pm | 3 ++- C4/SIP/Trapper.pm | 21 +++++++++++++++++++++ 2 files changed, 23 insertions(+), 1 deletion(-) create mode 100644 C4/SIP/Trapper.pm --- a/C4/SIP/SIPServer.pm +++ a/C4/SIP/SIPServer.pm @@ -6,7 +6,6 @@ use warnings; use FindBin qw($Bin); use lib "$Bin"; use Sys::Syslog qw(syslog); -use Koha::Logger; use Net::Server::PreFork; use IO::Socket::INET; use Socket qw(:DEFAULT :crlf); @@ -19,6 +18,8 @@ use C4::SIP::Sip::MsgType qw( handle login_core ); use C4::SIP::Sip qw( read_SIP_packet ); use Koha::Logger; +use C4::SIP::Trapper; +tie *STDERR, "C4::SIP::Trapper"; use base qw(Net::Server::PreFork); --- a/C4/SIP/Trapper.pm +++ a/C4/SIP/Trapper.pm @@ -0,0 +1,21 @@ +package C4::SIP::Trapper; + +use Modern::Perl; + +use Koha::Logger; + +sub TIEHANDLE { + my $class = shift; + bless [], $class; +} + +sub PRINT { + my $self = shift; + $Log::Log4perl::caller_depth++; + my $logger = Koha::Logger->get({ interface => 'sip', category => 'STDERR' }); + warn @_; + $logger->error(@_); + $Log::Log4perl::caller_depth--; +} + +1; --