Log::JSON - Log data to a file as JSON
use Log::JSON;
my $logger = Log::JSON->new(
file => '/path/errorlog.json', # required
date => 1, # optional
remove_newlines => 1, # optional
);
$logger->log(a => 1, b => 2);
# '/path/errorlog.json' now contains:
# {"__date":"2010-03-28T23:15:52Z","a":1,"b":1}
This module logs a hash to a file as JSON. The keys are printed in sorted order.
Often log files have several raw numbers and strings whose meaning is not immediately clear. With JSON formatted text in your log files, a human can open the file and quickly decipher the content because each piece of information is labeled.
Using JSON also means log files are easy to parse and the data structures can be easily revived.
The name of the file to log data to
Adds an __date field to your json. The '__' part ensures the date is the first information logged to each line when the keys are sorted.
This boolean is set to true by default. It means your jason data structures will be logged entirely on one line.
Returns a Log::JSON object.
Appends %hash to a file as JSON. The keys are sorted when the hash is converted to JSON.
This should probably should have been a Log::Dispatch plugin.
Thanks to Foxtons Ltd for providing the opportunity to write and release the original version of this module.
Log::Message::Structured, Log::Structured, Log::Sprintf
Eric Johnson <cpan at iijo dot org>
This software is copyright (c) 2012 by Eric Johnson.
This is free software; you can redistribute it and/or modify it under the same terms as the Perl 5 programming language system itself.