oracular (3) Log::ger::Format::MultilevelLog.3pm.gz

Provided by: liblog-ger-perl_0.042-2_all bug

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>

       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.