table of contents
Log::ger::Format::MultilevelLog(3pm) | User Contributed Perl Documentation | Log::ger::Format::MultilevelLog(3pm) |
NAME¶
Log::ger::Format::MultilevelLog - Create a log($LEVEL, ...) subroutine/method
VERSION¶
version 0.042
SYNOPSIS¶
To use for the current package:
use Log::ger::Format MultilevelLog => ( # sub_name => 'log_it', # optional, defaults to 'log' # method_name => 'log_it', # optional, defaults to 'log' # exclusive => 1, # optional, defaults to 0 ); use Log::ger; log('warn', 'This is a warning'); log('debug', 'This is a debug, data is %s', $data); log_warn "This is also a warning"; # still available, unless you set exclusive to 1
DESCRIPTION¶
The Log::ger default is to create separate "log_LEVEL" subroutine (or "LEVEL" methods) for each level, e.g. "log_trace" subroutine (or "trace" method), "log_warn" (or "warn"), and so on. But sometimes you might want a log routine that takes $level as the first argument. That is, instead of:
log_warn('blah ...');
or:
$log->debug('Blah: %s', $data);
you prefer:
log('warn', 'blah ...');
or:
$log->log('debug', 'Blah: %s', $data);
This format plugin can create such log routine for you.
Note: the multilevel log is slightly slower because of the extra argument and additional string level -> numeric level conversion. See benchmarks in Bencher::Scenarios::Log::ger.
Note: the individual separate "log_LEVEL" subroutines (or "LEVEL" methods) are still installed, unless you specify configuration "exclusive" to true.
CONFIGURATION¶
sub_name¶
String. Defaults to "log".
method_name¶
String. Defaults to "log".
exclusive¶
Boolean. If set to true, will block the generation of the default "log_LEVEL" subroutines or "LEVEL" methods (e.g. "log_warn", "trace", ...).
SEE ALSO¶
Log::ger::Format::HashArgs
AUTHOR¶
perlancar <perlancar@cpan.org>
COPYRIGHT AND LICENSE¶
This software is copyright (c) 2023, 2022, 2020, 2019, 2018, 2017 by perlancar <perlancar@cpan.org>.
This is free software; you can redistribute it and/or modify it under the same terms as the Perl 5 programming language system itself.
2024-05-25 | perl v5.38.2 |