NAME¶
Log::Any::Adapter::Util - Common utility functions for Log::Any
DESCRIPTION¶
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.
SUBROUTINES¶
logging_methods¶
Returns a list of all logging method. E.g. "trace", "info",
etc.
detection_methods¶
Returns a list of detection methods. E.g. "is_trace",
"is_info", etc.
logging_and_detection_methods¶
Returns a list of logging and detection methods (but not aliases).
log_level_aliases¶
Returns key/value pairs mapping aliases to "official" names. E.g.
"err" maps to "error".
logging_aliases¶
Returns a list of logging alias names. These are the keys from
"log_level_aliases".
detection_aliases¶
Returns a list of detection aliases. E.g. "is_err",
"is_fatal", etc.
numeric_level¶
Given a level name (or alias), returns the numeric value described above under
log level constants. E.g. "err" would return 3.
dump_one_line¶
Given a reference, returns a one-line Data::Dumper dump with keys sorted.
make_method¶
Given a method name, a code reference and a package name, installs the code
reference as a method in the package.
require_dynamic (DEPRECATED)¶
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.
read_file (DEPRECATED)¶
Slurp a file. Does *not* apply any layers. Used for testing and may become
private in the future.
cmp_deeply (DEPRECATED)¶
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.
USAGE¶
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
AUTHORS¶
- 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>
COPYRIGHT AND LICENSE¶
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.