Dancer2::Core::Role::Logger(3pm)

NAME
Dancer2::Core::Role::Logger - Role for logger engines

VERSION
version 2.1.0

DESCRIPTION
Any class that consumes this role will be able to implement to write log messages.

In order to implement this role, the consumer must implement the "log" method. This method will receives as argument the "level" and the "message".

ATTRIBUTES

  auto_encoding_charset
Charset to use when writing a message.

  app_name
Name of the application. Can be used in the message.

  log_format
This is a format string (or a preset name) to specify the log format.

The possible values are:

%a  app name

%h  host emitting the request

%t  date (local timezone, formatted like %d/%b/%Y %H:%M:%S)

%T  date (local timezone, formatted like %Y-%m-%d %H:%M:%S)

%u  date (UTC timezone, formatted like %d/%b/%Y %H:%M:%S)

%U  date (UTC timezone, formatted like %Y-%m-%d %H:%M:%S)

%P  PID

%L  log level

%D  timer

%m  message

%p  package name that emits the message

%f  file name that emits the message

%l  line from the file

%i  request ID

%{$fmt}t
    timer formatted with a valid time format

%{header}h
    header value

  log_level
Level to use by default.

METHODS

  core
Log messages as core.

  debug
Log messages as debug.

  info
Log messages as info.

  warning
Log messages as warning.

  error
Log messages as error.

  format_message
Provides a common message formatting.

  map_chars_to_subs
Returns a hashref which has all the items needed for message formatting.

CONFIGURATION
The logger configuration variable tells Dancer2 which engine to use.

You can change it either in your config.yml file:

    # logging to console
    logger: "console"

The log format can also be configured, please see "log_format" in Dancer2::Core::Role::Logger for details.

AUTHOR
Dancer Core Developers

COPYRIGHT AND LICENSE
This software is copyright (c) 2026 by Alexis Sukrieh.

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