Log::Any::Adapter::Util(3) User Contributed Perl Documentation Log::Any::Adapter::Util(3)

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

version 1.717

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.

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.

2024-09-01 perl v5.40.0