One Hat Cyber Team
Your IP :
172.16.0.254
Server IP :
58.26.163.33
Server :
Windows NT DGPENSV2LPKMN 10.0 build 14393 (Windows Server 2016) AMD64
Server Software :
Apache/2.4.46 (Win64) OpenSSL/1.1.1h PHP/7.3.25
PHP Version :
7.3.25
Buat File
|
Buat Folder
Eksekusi
Dir :
C:
/
xampp7
/
perl
/
vendor
/
lib
/
Dancer2
/
Logger
/
View File Name :
LogReport.pm
# Copyrights 2007-2019 by [Mark Overmeer <markov@cpan.org>]. # For other contributors see ChangeLog. # See the manual pages for details on the licensing terms. # Pod stripped from pm file by OODoc 2.02. # This code is part of distribution Log-Report. Meta-POD processed with # OODoc into POD and HTML manual-pages. See README.md # Copyright Mark Overmeer. Licensed under the same terms as Perl itself. package Dancer2::Logger::LogReport; use vars '$VERSION'; $VERSION = '1.29'; # ABSTRACT: Dancer2 logger engine for Log::Report use strict; use warnings; use Moo; use Dancer2::Core::Types; use Scalar::Util qw/blessed/; use Log::Report 'log-report', syntax => 'REPORT'; our $AUTHORITY = 'cpan:MARKOV'; my %level_dancer2lr = ( core => 'TRACE' , debug => 'TRACE' ); with 'Dancer2::Core::Role::Logger'; # Set by calling function has dispatchers => ( is => 'ro' , isa => Maybe[HashRef] ); sub BUILD { my $self = shift; my $configs = $self->dispatchers || {default => undef}; $self->{use} = [keys %$configs]; dispatcher 'do-not-reopen'; foreach my $name (keys %$configs) { my $config = $configs->{$name} || {}; if(keys %$config) { my $type = delete $config->{type} or die "dispatcher configuration $name without type"; dispatcher $type, $name, %$config; } } } around 'error' => sub { my ($orig, $self) = (shift, shift); # If it's a route exception (generated by Dancer) and we're also using the # Plugin, then the plugin will handle the exception using its own hook into # the error system. This should be able to removed in the future with # https://github.com/PerlDancer/Dancer2/pull/1287 return if $_[0] =~ /^Route exception/ && $INC{'Dancer2/Plugin/LogReport.pm'}; $self->log(error => @_); }; sub log # no protoypes in Dancer2 { my ($self, $level, $msg) = @_; my %options; # If only using the logger on its own (without the associated plugin), make # it behave like a normal Dancer logger unless ($INC{'Dancer2/Plugin/LogReport.pm'}) { $msg = $self->format_message($level, $msg); $options{is_fatal} = 0; } # the levels are nearly the same. my $reason = $level_dancer2lr{$level} || uc $level; report \%options, $reason => $msg; undef; } 1;