Catmandu::Fix::log - Log::Any logger as fix
Contents
Configuration
To have a full control over the log messages, create a 'catmandu.yml' with a 'log4perl' section as shown
below:
$ cat catmandu.yml
log4perl: |
log4perl.category.Catmandu::Fix::log=TRACE,OUT
log4perl.appender.OUT=Log::Log4perl::Appender::Screen
log4perl.appender.OUT.stderr=1
log4perl.appender.OUT.utf8=1
log4perl.appender.OUT.layout=PatternLayout
log4perl.appender.OUT.layout.ConversionPattern=%d [%P] - %p %l time=%r : %m%n
Using this configuration file all logging messages are written to the screen (stderr output). With this
configuration in place use the catmandu command with the -D option to view the logging output:
$ echo '{}' | catmandu convert -D to YAML --fix 'log("help!")' > output.yaml 2> log.txt
The Unix redirections '>' and '2>' can be used to write the output of the catmandu command and the
logging in two separate files.
Description
This fix add debugging capabilities to fixes. To use it via the command line you need to add the '-D'
option to your script. E.g.
echo '{}' | catmandu convert -D to YAML --fix 'log("help!", level:WARN)'
By default all logging messages have a level:INFO and will not be displayed unless a log4perl
configuration is in place (see below). Using log messages without a log4perl configuration requires a log
level of 'WARN', 'ERROR' or 'FATAL'.
Name
Catmandu::Fix::log - Log::Any logger as fix
See Also
Catmandu::Fix, Catmandu::Logger , Log::log4perl
perl v5.40.0 2025-01-17 Catmandu::Fix::log(3pm)
Synopsis
log('test123')
log('hello world' , level:WARN)
