Log::Any::Adapter::Callback - Send Log::Any logs to a subroutine
version 0.09
# say, let's POST each log message to an HTTP API server use LWP::UserAgent; my $ua = LWP::UserAgent->new; use Log::Any::Adapter; Log::Any::Adapter->set('Callback', min_level => 'warn', logging_cb => sub { my ($method, $self, $format, @params) = @_; $ua->post("https://localdomain/log", level=>$method, Content=>$format); sleep 1; # don't overload the server }, detection_cb => sub { ... }, # optional, default is: sub { 1 } );
This adapter lets you specify callback subroutine to be called by Log::Any's logging methods (like $log->debug(), $log->error(), etc) and detection methods (like $log->is_warning(), $log->is_fatal(), etc.).
This adapter is used for customized logging, and is mostly a convenient construct to save a few lines of code. You could achieve the same effect by creating a full Log::Any adapter class.
Your logging callback subroutine will be called with these arguments:
($method, $self, $format, @params)
where $method is the name of method (like "debug") and ($self, $format, @params) are given by Log::Any.
Log::Any
Please visit the project's homepage at https://metacpan.org/release/Log-Any-Adapter-Callback.
Source repository is at https://github.com/sharyanto/perl-Log-Any-Adapter-Callback.
Please report any bugs or feature requests on the bugtracker website https://rt.cpan.org/Public/Dist/Display.html?Name=Log-Any-Adapter-Callback
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.
Steven Haryanto <stevenharyanto@gmail.com>
This software is copyright (c) 2014 by Steven Haryanto.
This is free software; you can redistribute it and/or modify it under the same terms as the Perl 5 programming language system itself.
To install Log::Any::Adapter::Callback, copy and paste the appropriate command in to your terminal.
cpanm
cpanm Log::Any::Adapter::Callback
CPAN shell
perl -MCPAN -e shell install Log::Any::Adapter::Callback
For more information on module installation, please visit the detailed CPAN module installation guide.