++ed by:

30 PAUSE users
16 non-PAUSE users.

💯 Doug Bell
and 11 contributors


Log::Any::Adapter::Util - Common utility functions for Log::Any


version 1.049


This module has utility functions to help develop Log::Any::Adapter subclasses or Log::Any::Proxy formatters/filters. It also has some functions used in internal testing.

Returns a list of all logging method. E.g. "trace", "info", etc.

Returns a list of detection methods. E.g. "is_trace", "is_info", etc.

Returns a list of logging and detection methods (but not aliases).

Returns key/value pairs mapping aliases to "official" names. E.g. "err" maps to "error".

Returns a list of logging alias names. These are the keys from "log_level_aliases".

Returns a list of detection aliases. E.g. "is_err", "is_fatal", etc.

Given a level name (or alias), returns the numeric value described above under log level constants. E.g. "err" would return 3.

Given a reference, returns a one-line Data::Dumper dump with keys sorted.

Given a method name, a code reference and a package name, installs the code reference as a method in the package.

Given a class name, attempts to load it via require unless the class already has a constructor available. Throws an error on failure. Used internally and may become private in the future.

Slurp a file. Does *not* apply any layers. Used for testing and may become private in the future.

Compares dump_one_line results for two references. Also takes a test label as a third argument. Used for testing and may become private in the future.


Nothing is exported by default.

Log level constants

If the :levels tag is included in the import list, the following numeric constants will be imported:

    EMERGENCY => 0
    ALERT     => 1
    CRITICAL  => 2
    ERROR     => 3
    WARNING   => 4
    NOTICE    => 5
    INFO      => 6
    DEBUG     => 7
    TRACE     => 8


  • Jonathan Swartz <swartz@pobox.com>

  • David Golden <dagolden@cpan.org>

  • Doug Bell <preaction@cpan.org>

  • Daniel Pittman <daniel@rimspace.net>

  • Stephen Thirlwall <sdt@cpan.org>


This software is copyright (c) 2017 by Jonathan Swartz, David Golden, and Doug Bell.

This is free software; you can redistribute it and/or modify it under the same terms as the Perl 5 programming language system itself.

12 POD Errors

The following errors were encountered while parsing the POD:

Around line 252:

Unknown directive: =func

Around line 256:

Unknown directive: =func

Around line 260:

Unknown directive: =func

Around line 264:

Unknown directive: =func

Around line 269:

Unknown directive: =func

Around line 274:

Unknown directive: =func

Around line 278:

Unknown directive: =func

Around line 283:

Unknown directive: =func

Around line 287:

Unknown directive: =func

Around line 292:

Unknown directive: =func

Around line 298:

Unknown directive: =func

Around line 303:

Unknown directive: =func