NAME
Log::ger::Output::Screen - Output log to screen
VERSION
version 0.019
SYNOPSIS
use Log::ger::Output Screen => (
# stderr => 1, # set to 0 to print to stdout instead of stderr
# use_color => 0, # set to 1/0 to force usage of color, default is from NO_COLOR/COLOR or (-t STDOUT)
# color_depth => 16, # if unset will guess from heuristic
# colorize_tags => 0, # if set to true, will colorize "[...]" prefix in log message to unique colors
# formatter => sub { ... },
);
use Log::ger;
log_warn "blah...";
DESCRIPTION
This Log::ger plugin outputs log messages as lines to screen (STDERR by default), coloring them according to the log messages' levels. There are different color schemes available, see Log::ger::Screen::ColorScheme::*
modules like Log::ger::Screen::ColorScheme::Unlike.
CONFIGURATION
stderr
Bool, default 1. Whether to print to STDERR (the default) or STDOUT.
use_color
Bool. The default is to look at the NO_COLOR and COLOR environment variables, or 1 when in interactive mode and 0 when not in interactive mode.
color_depth
Integer, either 0, 16, 256, or 16777216. If unset, will use the following heuristic to guess color depth of terminal. First, if "use_color" is false then 0. Otherwise, check if COLORTERM environment variable is defined and has the value of truecolor
; if yes then use 16777216. Otherwise, check if TERM environment variable contains the string 256color
; if yes then 256. Otherwise 16.
colorize_tags
Bool, default false. Experimental. If set to true, will colorize "[...]" tag prefixes in log message with unique RGB color. Will only do this if color is enabled, obviously. This option is inspired by Dist::Zilla terminal output.
For example, if log message is something like one of the following:
[pericmd][plugin Foo::Bar] skip foobar-ing the program because of qux
my-prog: [pericmd] [plugin Foo::Bar] skip foobar-ing the program because of qux
Then the [pericmd]
and [plugin Foo::Bar]
will be given a unique RGB color each.
formatter
Coderef. When defined, will pass the formatted message (but being applied with colors) to this custom formatter.
ENVIRONMENT
COLOR_DEPTH
Will be used as a default for "color_depth" configuration.
NO_COLOR
Can be set (to anything) to disable color by default, if /use_color
is not set. Consulted before "COLOR".
COLOR
Can be set to disable/enable color by default, if /use_color
is not set.
HISTORY
Originally modelled after Log::Any::Adapter::Screen.
SEE ALSO
AUTHOR
perlancar <perlancar@cpan.org>
COPYRIGHT AND LICENSE
This software is copyright (c) 2022, 2021, 2020, 2018, 2017 by perlancar <perlancar@cpan.org>.
This is free software; you can redistribute it and/or modify it under the same terms as the Perl 5 programming language system itself.