X-Git-Url: http://git.shadowcat.co.uk/gitweb/gitweb.cgi?a=blobdiff_plain;f=lib%2FObject%2FRemote%2FLogging%2FLogger.pm;h=888d9984bfbc5626e65f241531c34b9fb394105e;hb=fe203cb2d2fd85b7051a55ffbb34c1b9ac1a65a2;hp=16b278d87f3c0671fb95679fbf63c036018f7d51;hpb=0fe333eb337345ecc842a14bf738b5db837936b0;p=scpubgit%2FObject-Remote.git diff --git a/lib/Object/Remote/Logging/Logger.pm b/lib/Object/Remote/Logging/Logger.pm index 16b278d..888d998 100644 --- a/lib/Object/Remote/Logging/Logger.pm +++ b/lib/Object/Remote/Logging/Logger.pm @@ -6,7 +6,7 @@ use Scalar::Util qw(weaken); has format => ( is => 'ro', required => 1, default => sub { '%l: %s' } ); has level_names => ( is => 'ro', required => 1 ); has min_level => ( is => 'ro', required => 1 ); -has max_level => ( is => 'ro' ); +has max_level => ( is => 'ro', required => 1, deafult => sub { 'info' } ); has _level_active => ( is => 'lazy' ); sub BUILD { @@ -59,12 +59,17 @@ sub _log { sub _create_format_lookup { my ($self, $level, $metadata, $content) = @_; + my $method = $metadata->{method}; + + $method = '(none)' unless defined $method; + return { '%' => '%', t => $self->_render_time($metadata->{timestamp}), r => $self->_render_remote($metadata->{object_remote}), s => $self->_render_log(@$content), l => $level, - p => $metadata->{package}, m => $metadata->{method}, - f => $metadata->{filename}, i => $metadata->{line}, + c => $metadata->{controller}, p => $metadata->{package}, m => $method, + f => $metadata->{filename}, i => $metadata->{line}, + h => $metadata->{hostname}, P => $metadata->{pid}, }; } @@ -73,7 +78,7 @@ sub _get_format_var_value { my ($self, $name, $data) = @_; my $val = $data->{$name}; return $val if defined $val; - return ''; + return '(undefined)'; } sub _render_time { @@ -96,7 +101,7 @@ sub _render { my $var_table = $self->_create_format_lookup($level, $metadata, [@content]); my $template = $self->format; - $template =~ s/%([\w])/$self->_get_format_var_value($1, $var_table)/ge; + $template =~ s/%([\w%])/$self->_get_format_var_value($1, $var_table)/ge; chomp($template); $template =~ s/\n/\n /g;