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
Log::ger
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.