Bug 16357: Use separate Log4Perl logger for each Plack app
This patch creates separate timestamped Log4Perl loggers for each Plack app, so that the Intranet, OPAC, and API are logged to separate files. To Test: 0) apt-get install libplack-middleware-logwarn-perl 1) Apply "Alternative" patches 2) Copy PLACK block from etc/log4perl.conf to /etc/koha/sites/kohadev/log4perl.conf and replace __LOG_DIR__ appropriately 3) Copy debian/templates/plack.psgi to /etc/koha/sites/kohadev/plack.psgi 4) Temporarily add 'warn "TEST"' to opac-main.pl and mainpage.pl 5) koha-plack --restart kohadev 6) Go to /cgi-bin/koha/mainpage.pl and /cgi-bin/koha/opac-main.pl 7) Open /var/log/koha/kohadev/plack-opac-error.log and /var/log/koha/kohadev/plack-intranet-error.log 7) Observe a log line like the following: [2020/06/22 03:51:23] [WARN] TEST at <SCRIPT and line #>. Signed-off-by: Arthur Suzuki <arthur.suzuki@biblibre.com> Signed-off-by: Joonas Kylmälä <joonas.kylmala@helsinki.fi> Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com> Signed-off-by: Jonathan Druart <jonathan.druart@bugs.koha-community.org>
This commit is contained in:
parent
57c62a612d
commit
ef021268bb
|
|
@ -38,10 +38,27 @@ log4perl.appender.SIP.layout=PatternLayout
|
|||
log4perl.appender.SIP.layout.ConversionPattern=[%d] [%p] %m %l %n
|
||||
log4perl.appender.SIP.utf8=1
|
||||
|
||||
log4perl.logger.plack = WARN, PLACK
|
||||
log4perl.appender.PLACK=Log::Log4perl::Appender::Screen
|
||||
log4perl.appender.PLACK.stderr = 1
|
||||
log4perl.appender.PLACK.mode=append
|
||||
log4perl.appender.PLACK.layout=PatternLayout
|
||||
log4perl.appender.PLACK.layout.ConversionPattern=[%d] [%p] %m
|
||||
log4perl.appender.PLACK.utf8=1
|
||||
|
||||
log4perl.logger.plack-opac = WARN, PLACKOPAC
|
||||
log4perl.appender.PLACKOPAC=Log::Log4perl::Appender::File
|
||||
log4perl.appender.PLACKOPAC.filename=__LOG_DIR__/plack-opac-error.log
|
||||
log4perl.appender.PLACKOPAC.mode=append
|
||||
log4perl.appender.PLACKOPAC.layout=PatternLayout
|
||||
log4perl.appender.PLACKOPAC.layout.ConversionPattern=[%d] [%p] %m
|
||||
log4perl.appender.PLACKOPAC.utf8=1
|
||||
|
||||
log4perl.logger.plack-api = WARN, PLACKAPI
|
||||
log4perl.appender.PLACKAPI=Log::Log4perl::Appender::File
|
||||
log4perl.appender.PLACKAPI.filename=__LOG_DIR__/plack-api-error.log
|
||||
log4perl.appender.PLACKAPI.mode=append
|
||||
log4perl.appender.PLACKAPI.layout=PatternLayout
|
||||
log4perl.appender.PLACKAPI.layout.ConversionPattern=[%d] [%p] %m
|
||||
log4perl.appender.PLACKAPI.utf8=1
|
||||
|
||||
log4perl.logger.plack-intranet = WARN, PLACKINTRANET
|
||||
log4perl.appender.PLACKINTRANET=Log::Log4perl::Appender::File
|
||||
log4perl.appender.PLACKINTRANET.filename=__LOG_DIR__/plack-intranet-error.log
|
||||
log4perl.appender.PLACKINTRANET.mode=append
|
||||
log4perl.appender.PLACKINTRANET.layout=PatternLayout
|
||||
log4perl.appender.PLACKINTRANET.layout.ConversionPattern=[%d] [%p] %m
|
||||
log4perl.appender.PLACKINTRANET.utf8=1
|
||||
|
|
|
|||
|
|
@ -71,15 +71,24 @@ Koha::Logger->get;
|
|||
builder {
|
||||
enable "ReverseProxy";
|
||||
enable "Plack::Middleware::Static";
|
||||
enable "Log4perl", category => "plack";
|
||||
enable "LogWarn";
|
||||
|
||||
# + is required so Plack doesn't try to prefix Plack::Middleware::
|
||||
enable "+Koha::Middleware::SetEnv";
|
||||
enable "+Koha::Middleware::RealIP";
|
||||
|
||||
mount '/opac' => $opac;
|
||||
mount '/intranet' => $intranet;
|
||||
mount '/api/v1/app.pl' => $apiv1;
|
||||
|
||||
mount '/opac' => builder {
|
||||
enable 'Log4perl', category => 'plack-opac';
|
||||
enable 'LogWarn';
|
||||
$opac;
|
||||
};
|
||||
mount '/intranet' => builder {
|
||||
enable 'Log4perl', category => 'plack-intranet';
|
||||
enable 'LogWarn';
|
||||
$intranet;
|
||||
};
|
||||
mount '/api/v1/app.pl' => builder {
|
||||
enable 'Log4perl', category => 'plack-api';
|
||||
enable 'LogWarn';
|
||||
$apiv1;
|
||||
};
|
||||
};
|
||||
|
|
|
|||
|
|
@ -38,10 +38,27 @@ log4perl.appender.SIP.layout=PatternLayout
|
|||
log4perl.appender.SIP.layout.ConversionPattern=[%d] [%p] %m %l %n
|
||||
log4perl.appender.SIP.utf8=1
|
||||
|
||||
log4perl.logger.plack = WARN, PLACK
|
||||
log4perl.appender.PLACK=Log::Log4perl::Appender::Screen
|
||||
log4perl.appender.PLACK.stderr = 1
|
||||
log4perl.appender.PLACK.mode=append
|
||||
log4perl.appender.PLACK.layout=PatternLayout
|
||||
log4perl.appender.PLACK.layout.ConversionPattern=[%d] [%p] %m
|
||||
log4perl.appender.PLACK.utf8=1
|
||||
|
||||
log4perl.logger.plack-opac = WARN, PLACKOPAC
|
||||
log4perl.appender.PLACKOPAC=Log::Log4perl::Appender::File
|
||||
log4perl.appender.PLACKOPAC.filename=__LOG_DIR__/plack-opac-error.log
|
||||
log4perl.appender.PLACKOPAC.mode=append
|
||||
log4perl.appender.PLACKOPAC.layout=PatternLayout
|
||||
log4perl.appender.PLACKOPAC.layout.ConversionPattern=[%d] [%p] %m
|
||||
log4perl.appender.PLACKOPAC.utf8=1
|
||||
|
||||
log4perl.logger.plack-api = WARN, PLACKAPI
|
||||
log4perl.appender.PLACKAPI=Log::Log4perl::Appender::File
|
||||
log4perl.appender.PLACKAPI.filename=__LOG_DIR__/plack-api-error.log
|
||||
log4perl.appender.PLACKAPI.mode=append
|
||||
log4perl.appender.PLACKAPI.layout=PatternLayout
|
||||
log4perl.appender.PLACKAPI.layout.ConversionPattern=[%d] [%p] %m
|
||||
log4perl.appender.PLACKAPI.utf8=1
|
||||
|
||||
log4perl.logger.plack-intranet = WARN, PLACKINTRANET
|
||||
log4perl.appender.PLACKINTRANET=Log::Log4perl::Appender::File
|
||||
log4perl.appender.PLACKINTRANET.filename=__LOG_DIR__/plack-intranet-error.log
|
||||
log4perl.appender.PLACKINTRANET.mode=append
|
||||
log4perl.appender.PLACKINTRANET.layout=PatternLayout
|
||||
log4perl.appender.PLACKINTRANET.layout.ConversionPattern=[%d] [%p] %m
|
||||
log4perl.appender.PLACKINTRANET.utf8=1
|
||||
|
|
|
|||
Loading…
Reference in New Issue