Mojo::Log::Colored - Colored Mojo logging
use Mojo::Log::Colored; # Log to STDERR $app->log( Mojo::Log::Colored->new( # optionally set the colors colors => { debug => "bold bright_white", info => "bold bright_blue", warn => "bold green", error => "bold yellow", fatal => "bold yellow on_red", } ) );
Mojo::Log::Colored is a logger for Mojolicious with colored output for the terminal. It lets you define colors for each log level based on Term::ANSIColor and comes with sensible default colors. The full lines in the log will be colored.
Since this inherits from Mojo::Log you can still give it a file, but the output would also be colored. That does not make a lot of sense, so you don't want to do that. Use this for development, not production.
file
Mojo::Log::Colored implements the following attributes.
my $colors = $log->colors; $log->colors( { debug => "bold bright_white", info => "bold bright_blue", warn => "bold green", error => "bold yellow", fatal => "bold yellow on_red", } );
Takes a hash reference with the five log levels as keys and strings of colors as values. Refer to Term::ANSIColor for more information about what kind of color you can use.
You can turn off coloring for specific levels by omitting them from the config hash.
$log->colors( { fatal => "bold green on_red", } );
The above will only color fatal messages. All other levels will be in your default terminal color.
my $cb = $log->format; $log = $log->format( sub { ... } );
A callback for formatting log messages. Cannot be passed to new at construction! See Mojo::Log for more information.
new
Mojo::Log::Colored inherits all methods from Mojo::Log and does not implement new ones.
Mojolicious changed the way multi-line log messages are emitted in version 9. This logger honours this default format.
Mojo::Log, Term::ANSIColor
This plugin was inspired by lanti asking about a way to find specific errors more easily in the Mojo log during unit test runs on Stack Overflow.
Copyright (C) simbabque.
This library is free software; you can redistribute it and/or modify it under the same terms as Perl itself.
simbabque <simbabque@cpan.org>
To install Mojo::Log::Colored, copy and paste the appropriate command in to your terminal.
cpanm
cpanm Mojo::Log::Colored
CPAN shell
perl -MCPAN -e shell install Mojo::Log::Colored
For more information on module installation, please visit the detailed CPAN module installation guide.