# perldoc > Log::Any::Adapter::Util

## NAME
    [Log::Any::Adapter::Util](https://www.chedong.com/phpMan.php/perldoc/Log%3A%3AAny%3A%3AAdapter%3A%3AUtil/markdown) - Common utility functions for [Log::Any](https://www.chedong.com/phpMan.php/perldoc/Log%3A%3AAny/markdown)

## VERSION
    version 1.717

## DESCRIPTION
    This module has utility functions to help develop [Log::Any::Adapter](https://www.chedong.com/phpMan.php/perldoc/Log%3A%3AAny%3A%3AAdapter/markdown) subclasses or
    [Log::Any::Proxy](https://www.chedong.com/phpMan.php/perldoc/Log%3A%3AAny%3A%3AProxy/markdown) 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](https://www.chedong.com/phpMan.php/perldoc/Data%3A%3ADumper/markdown) 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.

