NAME Log::ger::Layout::LTSV - Layout log message as LTSV VERSION This document describes version 0.006 of Log::ger::Layout::LTSV (from Perl distribution Log-ger-Layout-LTSV), released on 2020-03-11. SYNOPSIS use Log::ger::Layout LTSV => ( add_fields => {key3 => 'value', key4 => 'value', ...}, # optional add_special_fields => {_date => 'Date_GMT', _host => 'Hostname', ...}, # optional delete_fields => ['key1', 'key2', qr/some-regex/, ...], # optional ); use Log::ger; # if you use it together with Log::ger::Format::None: log_warn({key1 => 'val1', key2 => 'val2', foo => 'bar', ...); # otherwise, using the standard formatter: log_warn("blah %s", ['some', 'data']); The final message will be something like: _date:2017-06-28T14:08:22 _host:example.com foo:bar key3:value key4:value or: _date:2017-06-28T14:08:22 _host:example.com message:blah ["some","data"] DESCRIPTION This layouter allows you to log message as LTSV row. If you use Log::ger::Format::None, you can pass a hashref. Otherwise, the message will be put in "message" label. You can then delete keys then add additional fields/keys (including special fields, a la Log::ger::Layout::Pattern). CONFIGURATION add_fields => hash add_special_fields => hash Known special fields: Category: Category of the logging event Class: Fully qualified package [or class] name of the caller Date_Local: Current date in ISO8601 format (YYYY-MM-DDhh:mm:ss) (localtime) Date_GMT: Current date in ISO8601 format (YYYY-MM-DDhh:mm:ss) (GMT) File: File where the logging event occurred Hostname: (if Sys::Hostname is available) Location: Fully qualified name of the calling method followed by the callers source the file name and line number between parentheses. Line: Line number within the file where the log statement was issued Message: The message to be logged Method: Method or function where the logging request was issued Level: Level ("priority") of the logging event PID: PID of the current process Elapsed_Start: Number of seconds elapsed from program start to logging event Elapsed_Last: Number of seconds elapsed from last logging event to current logging event Stack_Trace: stack trace of functions called Unknown special fields will cause the layouter to die. delete_fields packages_to_ignore Regex or arrayref. When producing caller or stack trace information, will pass this to Devel::Caller::Util's "caller()" or "callers()". subroutines_to_ignore Regex or arrayref. When producing caller or stack trace information, will pass this to Devel::Caller::Util's "caller()" or "callers()". HOMEPAGE Please visit the project's homepage at . SOURCE Source repository is at . BUGS Please report any bugs or feature requests on the bugtracker website When submitting a bug or request, please include a test-file or a patch to an existing test-file that illustrates the bug or desired feature. SEE ALSO More about LTSV format: Log::ger Log::ger::Layout::Pattern AUTHOR perlancar COPYRIGHT AND LICENSE This software is copyright (c) 2020, 2019, 2017 by 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.