| Line 0
          
      
      
        Link Here | 
            
              |  |  | 1 | package Koha::Logger; | 
            
              | 2 |  | 
            
              | 3 | # Copyright 2015 ByWater Solutions | 
            
              | 4 | # kyle@bywatersolutions.com | 
            
              | 5 | # | 
            
              | 6 | # This file is part of Koha. | 
            
              | 7 | # | 
            
              | 8 | # Koha is free software; you can redistribute it and/or modify it under the | 
            
              | 9 | # terms of the GNU General Public License as published by the Free Software | 
            
              | 10 | # Foundation; either version 3 of the License, or (at your option) any later | 
            
              | 11 | # version. | 
            
              | 12 | # | 
            
              | 13 | # Koha is distributed in the hope that it will be useful, but WITHOUT ANY | 
            
              | 14 | # WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR | 
            
              | 15 | # A PARTICULAR PURPOSE.  See the GNU General Public License for more details. | 
            
              | 16 | # | 
            
              | 17 | # You should have received a copy of the GNU General Public License along | 
            
              | 18 | # with Koha; if not, write to the Free Software Foundation, Inc., | 
            
              | 19 | # 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. | 
            
              | 20 |  | 
            
              | 21 | =head1 NAME | 
            
              | 22 |  | 
            
              | 23 | Koha::Log | 
            
              | 24 |  | 
            
              | 25 | =head1 SYNOPSIS | 
            
              | 26 |  | 
            
              | 27 |   use Koha::Log; | 
            
              | 28 |  | 
            
              | 29 | =head1 FUNCTIONS | 
            
              | 30 |  | 
            
              | 31 | =cut | 
            
              | 32 |  | 
            
              | 33 | use Modern::Perl; | 
            
              | 34 |  | 
            
              | 35 | use Log::Log4perl; | 
            
              | 36 | use Carp; | 
            
              | 37 |  | 
            
              | 38 | use C4::Context; | 
            
              | 39 |  | 
            
              | 40 | BEGIN { | 
            
              | 41 |     Log::Log4perl->wrapper_register(__PACKAGE__); | 
            
              | 42 |  | 
            
              | 43 |     my $conf; | 
            
              | 44 |     if ( exists $ENV{"LOG4PERL_CONF"} and $ENV{'LOG4PERL_CONF'} and -s $ENV{"LOG4PERL_CONF"} ) { | 
            
              | 45 |  | 
            
              | 46 |         # Check for web server level configuration first | 
            
              | 47 |         $conf = $ENV{"LOG4PERL_CONF"}; | 
            
              | 48 |     } | 
            
              | 49 |     else { | 
            
              | 50 |         # If no web server level config exists, look in the koha conf file for one | 
            
              | 51 |         $conf = C4::Context->config("log4perl_conf"); | 
            
              | 52 |     } | 
            
              | 53 |  | 
            
              | 54 |     Log::Log4perl->init_once($conf); | 
            
              | 55 | } | 
            
              | 56 |  | 
            
              | 57 | sub get { | 
            
              | 58 |     my ( $class, $category, $interface ) = @_; | 
            
              | 59 |  | 
            
              | 60 |     croak("No category passed in!") unless $category; | 
            
              | 61 |  | 
            
              | 62 |     $interface ||= C4::Context->interface(); | 
            
              | 63 |  | 
            
              | 64 |     return Log::Log4perl->get_logger("$interface.$category"); | 
            
              | 65 | } | 
            
              | 66 |  | 
            
              | 67 | =head1 AUTHOR | 
            
              | 68 |  | 
            
              | 69 | Kyle M Hall, E<lt>kyle@bywatersolutions.comE<gt> | 
            
              | 70 |  | 
            
              | 71 | =cut | 
            
              | 72 |  | 
            
              | 73 | 1; | 
            
              | 74 |  | 
            
              | 75 | __END__ |