FreeBSD Manual Pages
Log::Report::DispatcheUseraContributed PerLog::Report::Dispatcher::Callback(3) 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. The "options" are the first parameter of Log::Report::report() (read over there). The "reason" is a capitized string like "ERROR". Then, the "message" (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.33, built on July 17, 2021. Website: http://perl.overmeer.net/CPAN/ LICENSE Copyrights 2007-2021 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/ perl v5.32.1 2021-07-Log::Report::Dispatcher::Callback(3)
NAME | INHERITANCE | SYNOPSIS | DESCRIPTION | METHODS | DETAILS | SEE ALSO | LICENSE
Want to link to this manual page? Use this URL:
<https://www.freebsd.org/cgi/man.cgi?query=Log::Report::Dispatcher::Callback&sektion=3&manpath=FreeBSD+13.1-RELEASE+and+Ports>