The London Perl and Raku Workshop takes place on 26th Oct 2024. If your company depends on Perl, please consider sponsoring and/or attending.

Changes for version 0.016 - 2017-07-13

  • Reduce startup overhead by splitting some parts of Log::ger to Log::ger::Heavy. When user loads modules that have 'use Log::ger', but never adds any outputs (which is a pretty common case when user just uses a module without setting up any logging), then we can cheat by skipping init_target() and just installs the null, default-named logging routines. So we split the part that does real init_target() to Log::ger::Heavy, similar to how Carp & Carp::Heavy was split. This reduces startup overhead significantly. When user loads Log::ger::Util (e.g. to run set_plugin()) or when some hooks are added, then we load Log::ger::Heavy.

Modules

A lightweight, flexible logging framework
Use a format plugin
Perform no formatting on the message
The bulk of the implementation of Log::ger
Use a layout plugin
Set logging output
Set output to a string
Use a plugin
Create a log($LEVEL, ...) subroutine/method
Utility routines for Log::ger