NAME
Log::Report::Dispatcher::Callback - call a code-ref for each log-line
INHERITANCE
Log::Report::Dispatcher::Callbackis a Log::Report::Dispatcher
SYNOPSIS
sub cb($$$){ my ($disp, $options, $reason, $message) = @_;...}dispatcher Log::Report::Dispatcher::Callback => 'cb',callback => \&cb;dispatcher CALLBACK => 'cb', # samecallback => \&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.
- $class->new($type, $name, %options)
-
Inherited, see "Constructors" in Log::Report::Dispatcher
-Option --Defined in --Defaultaccept Log::Report::Dispatcher depend on modecallback <required>charset Log::Report::Dispatcher undefformat_reason Log::Report::Dispatcher 'LOWERCASE'locale Log::Report::Dispatcher <system locale>mode Log::Report::Dispatcher 'NORMAL'- accept => $reasons|\@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
Attributes
Extends "Attributes" in Log::Report::Dispatcher.
- $obj->callback()
-
Returns the code reference which will handle each logged message.
- $obj->isDisabled()
-
Inherited, see "Attributes" in Log::Report::Dispatcher
- $obj->mode()
-
Inherited, see "Attributes" in Log::Report::Dispatcher
- $obj->name()
-
Inherited, see "Attributes" in Log::Report::Dispatcher
- $obj->needs( [$reason] )
-
Inherited, see "Attributes" in Log::Report::Dispatcher
- $obj->type()
-
Inherited, see "Attributes" in Log::Report::Dispatcher
Logging
Extends "Logging" in Log::Report::Dispatcher.
- $any->addSkipStack(@CODE)
-
Inherited, see "Logging" in Log::Report::Dispatcher
- $obj->close()
-
Inherited, see "Logging" in Log::Report::Dispatcher
- $any->collectLocation()
-
Inherited, see "Logging" in Log::Report::Dispatcher
- $any->collectStack( [$maxdepth] )
-
Inherited, see "Logging" in Log::Report::Dispatcher
- $obj->log(\%options, $reason, $message, $domain)
-
Inherited, see "Logging" in Log::Report::Dispatcher
- $obj->skipStack()
-
Inherited, see "Logging" in Log::Report::Dispatcher
- $any->stackTraceLine(%options)
-
Inherited, see "Logging" in Log::Report::Dispatcher
- $obj->translate(\%options, $reason, $message)
-
Inherited, see "Logging" in Log::Report::Dispatcher
DETAILS
Extends "DETAILS" in Log::Report::Dispatcher.
DIAGNOSTICS
- Error: dispatcher $name needs a 'callback'
-
Cast by
new()
SEE ALSO
This module is part of Log-Report version 1.46, built on June 16, 2026. Website: http://perl.overmeer.net/CPAN/
LICENSE
For contributors see file ChangeLog.
This software is copyright (c) 2007-2026 by Mark Overmeer.
This is free software; you can redistribute it and/or modify it under the same terms as the Perl 5 programming language system itself.