NAME

Log::ger::Plugin::MultilevelLog - Create a log($LEVEL, ...) subroutine/method

VERSION

version 0.028

SYNOPSIS

 use Log::ger::Plugin MultilevelLog => (
     sub_name => 'log',    # optional
     method_name => 'log', # optional
 );
 use Log::ger;

DESCRIPTION

The default way 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, e.g. instead of:

 log_warn('blah ...');

or:

 $log->debug('Blah: %s', $data);

you prefer:

 log('warn', 'blah ...');

or:

 $log->log('debug', 'Blah: %s', $data);

This plugin can create such log routine for you.

Note: the multilevel log is slower because of extra argument and additional string level -> numeric level conversion.

Note: the individual separate log_LEVEL subroutines (or LEVEL methods) are still installed.

CONFIGURATION

sub_name => str (default: "log")

method_name => str (default: "log")

AUTHOR

perlancar <perlancar@cpan.org>

COPYRIGHT AND LICENSE

This software is copyright (c) 2019, 2018, 2017 by 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.