=encoding utf8


This is Perl module B<App::jl>.

=begin html

<a href="https://github.com/bayashi/App-jl/blob/main/lib/App/jl.pm"><img src="https://img.shields.io/badge/Version-0.20-green?style=flat"></a> <a href="https://github.com/bayashi/App-jl/blob/main/LICENSE"><img src="https://img.shields.io/badge/LICENSE-Artistic-GREEN.png"></a> <a href="http://travis-ci.org/bayashi/App-jl"><img src="https://secure.travis-ci.org/bayashi/App-jl.png?_t=1640484266"/></a> <a href="https://coveralls.io/r/bayashi/App-jl"><img src="https://coveralls.io/repos/bayashi/App-jl/badge.png?_t=1640484266&branch=main"/></a>

=end html


=head1 SYNOPSIS

The B<jl> command allows you to show the "JSON in JSON" log nicely. Recursively decode JSON in JSON string like below

    $ echo '{"foo":"{\"bar\":\"{\\\"baz\\\":123}\"}"}' | jl
    {
       "foo" : {
          "bar" : {
             "baz" : 123
          }
       }
    }

A complecated log can be converted to nice JSON structure to treat a tool like C<jq> .

    echo '{"service":"Foo-Service","pod":"bar-baz-12345","message":"{\"log\":\"[PID:12345]<info>\\nThis is log message. foo, bar, baz, qux, long message is going to be splitted nicely to treat JSON by jq without any special function\",\"timestamp\":1560526739}"}' | jl -xxxx
    {
       "message" : {
          "log" : [
             [
                "[PID:12345]",
                "<info>"
             ],
             [
                "This is log message. foo",
                "bar",
                "baz",
                "qux",
                "long message is going to be splitted nicely to treat JSON by jq without any special function"
             ]
          ],
          "timestamp" : "2019-06-15 00:38:59"
       },
       "pod" : "bar-baz-12345",
       "service" : "Foo-Service"
    }

Make JSON in JSON logs more readable.


=head1 INSTALLATION

There are several ways to install,

1) The easiest way to install B<App::jl> is

    $ curl -L https://cpanmin.us | perl - -M https://cpan.metacpan.org -n App::jl

2) If your L<cpanm> (cpm or CPAN) is set up, you should just be able to do

    $ cpanm App::jl

3) Clone it, then build it

    $ perl Makefile.PL
    $ make
    # make install


=head1 REPOSITORY

App::jl is hosted on github
L<http://github.com/bayashi/App-jl>


=head1 LICENSE

This module is free software; you can redistribute it and/or
modify it under the same terms as Perl itself. See L<perlartistic>.


=head1 AUTHOR

Dai Okabayashi E<lt>bayashi@cpan.orgE<gt>
