NAME
Log::Report::Dispatcher::Callback - call a code-ref for each log-line
INHERITANCE
Log::Report::Dispatcher::Callback
is a Log::Report::Dispatcher
SYNOPSIS
sub cb($$$)
{ my ($disp, $options, $reason, $message) = @_;
...
}
dispatcher Log::Report::Dispatcher::Callback => 'cb'
, callback => \&cb;
dispatcher CALLBACK => 'cb' # same
, callback => \&cb;
DESCRIPTION
This basic file logger accepts a callback, which is called for each message which is to be logged. When you need complex things, you may best make your own extension to Log::Report::Dispatcher, but for simple things this will do.
Extends "DESCRIPTION" in Log::Report::Dispatcher.
. Example
sub send_mail($$$)
{ my ($disp, $options, $reason, $message) = @_;
my $msg = Mail::Send->new(Subject => $reason
, To => 'admin@localhost');
my $fh = $msg->open('sendmail');
print $fh $disp->translate($reason, $message);
close $fh;
}
dispatcher CALLBACK => 'mail', callback => \&send_mail;
METHODS
Extends "METHODS" in Log::Report::Dispatcher.
Constructors
Extends "Constructors" in Log::Report::Dispatcher.
- $obj->close()
-
Inherited, see "Constructors" in Log::Report::Dispatcher
- Log::Report::Dispatcher::Callback->new($type, $name, %options)
-
-Option --Defined in --Default accept Log::Report::Dispatcher depend on mode callback <required> charset Log::Report::Dispatcher <undef> format_reason Log::Report::Dispatcher 'LOWERCASE' locale Log::Report::Dispatcher <system locale> mode Log::Report::Dispatcher 'NORMAL'
- accept => REASONS
- callback => CODE
-
Your
callback
is called with five parameters: this dispatcher object, the options, a reason and a message. Theoptions
are the first parameter of Log::Report::report() (read over there). Thereason
is a capitized string likeERROR
. Then, themessage
(is a Log::Report::Message). Finally the text-domain of the message. - charset => CHARSET
- format_reason => 'UPPERCASE'|'LOWERCASE'|'UCFIRST'|'IGNORE'|CODE
- locale => LOCALE
- mode => 'NORMAL'|'VERBOSE'|'ASSERT'|'DEBUG'|0..3
Accessors
Extends "Accessors" in Log::Report::Dispatcher.
- $obj->callback()
-
Returns the code reference which will handle each logged message.
- $obj->isDisabled()
-
Inherited, see "Accessors" in Log::Report::Dispatcher
- $obj->mode()
-
Inherited, see "Accessors" in Log::Report::Dispatcher
- $obj->name()
-
Inherited, see "Accessors" in Log::Report::Dispatcher
- $obj->needs( [$reason] )
-
Inherited, see "Accessors" in Log::Report::Dispatcher
- $obj->type()
-
Inherited, see "Accessors" in Log::Report::Dispatcher
Logging
Extends "Logging" in Log::Report::Dispatcher.
- $obj->addSkipStack(@CODE)
- Log::Report::Dispatcher::Callback->addSkipStack(@CODE)
-
Inherited, see "Logging" in Log::Report::Dispatcher
- $obj->collectLocation()
- Log::Report::Dispatcher::Callback->collectLocation()
-
Inherited, see "Logging" in Log::Report::Dispatcher
- $obj->collectStack( [$maxdepth] )
- Log::Report::Dispatcher::Callback->collectStack( [$maxdepth] )
-
Inherited, see "Logging" in Log::Report::Dispatcher
- $obj->log(HASH-$of-%options, $reason, $message, $domain)
-
Inherited, see "Logging" in Log::Report::Dispatcher
- $obj->skipStack()
-
Inherited, see "Logging" in Log::Report::Dispatcher
- $obj->stackTraceLine(%options)
- Log::Report::Dispatcher::Callback->stackTraceLine(%options)
-
Inherited, see "Logging" in Log::Report::Dispatcher
- $obj->translate(HASH-$of-%options, $reason, $message)
-
Inherited, see "Logging" in Log::Report::Dispatcher
DETAILS
Extends "DETAILS" in Log::Report::Dispatcher.
SEE ALSO
This module is part of Log-Report distribution version 1.36, built on October 27, 2023. Website: http://perl.overmeer.net/CPAN/
LICENSE
Copyrights 2007-2023 by [Mark Overmeer <markov@cpan.org>]. For other contributors see ChangeLog.
This program is free software; you can redistribute it and/or modify it under the same terms as Perl itself. See http://dev.perl.org/licenses/