NAME

Log::Agent::Tag::Callback - a dynamic tag string

SYNOPSIS

require Log::Agent::Tag::Callback;
# Inherits from Log::Agent::Tag.

my $tag = Log::Agent::Tag::Callback->make(
    -name      => "session id",
    -callback  => Callback->new($obj, 'method', @args),
    -postfix   => 1,
    -separator => " -- ",
);

DESCRIPTION

This class represents a dynamic tag string, whose value is determined by invoking a pre-determined callback, which is described by a Callback object.

You need to make your application depend on the Callback module from CPAN if you make use of this tagging feature, since Log::Agent does not depend on it, on purpose (it does not really use it, it only offers an interface to plug it in). At least version 1.02 must be used.

CREATION ROUTINE PARAMETERS

The following parameters are defined, in alphabetical order:

-callback => Callback object

The callback to invoke to determine the value of the tag. The call is protected via a busy flag, in case there is an unwanted recursion due to a call to one of the logging routines whilst within the callback.

If the callback is busy, the tag emitted is:

callback "user" busy

assuming user is the name you supplied via -name for this tag.

-name => name

The name of this tag. Used to flag a callback as busy in case there is an unwanted recursion into the callback routine.

-postfix => flag

Whether tag should be placed after or before the log message. By default, it is prepended to the log message, i.e. this parameter is false.

-separator => string

The separation string between the tag and the log message. A single space by default.

AUTHOR

Raphael Manfredi <Raphael_Manfredi@pobox.com>

SEE ALSO

Callback(3), Log::Agent::Tag(3), Log::Agent::Message(3).