package Mylogger; use warnings; use strict; use base qw(Log::Log4perl); my @error_msgs; sub init { Log::Log4perl::init(@_); return; } sub get_logger { $Log::Log4perl::caller_depth = 1; my $logger = Log::Log4perl::get_logger(@_); bless $logger, __PACKAGE__; return $logger; } sub error { my ($this, $msg) = @_; push(@error_msgs, "ERROR $msg"); $this->SUPER::error($msg); return; } sub get_logged_errors { return \@error_msgs; } 1;