The Perl Toolchain Summit needs more sponsors. If your company depends on Perl, please support this very important event.

NAME

Elasticsearch::Role::Logger - Provides common functionality to Logger implementations

VERSION

version 1.04

DESCRIPTION

This role provides common functionality to Logger implementations, to enable the logging of events and the tracing of request-response conversations with Elasticsearch nodes.

See Elasticsearch::Logger::LogAny for the default implementation.

CONFIGURATION

log_to

Parameters passed to log_to are used by Elasticsearch::Role::Logger implementations to setup the "log_handle()". See "log_to" in Elasticsearch::Logger::LogAny for details.

log_as

By default, events emitted by "debug()", "info()", "warning()", "error()" and "critical()" are logged to the "log_handle()" under the category "elasticsearch.event", which can be configured with log_as.

trace_to

Parameters passed to trace_to are used by Elasticsearch::Role::Logger implementations to setup the "trace_handle()". See "trace_to" in Elasticsearch::Logger::LogAny for details.

trace_as

By default, trace output emitted by "trace_request()", "trace_response()", "trace_error()" and "trace_comment()" are logged under the category elasticsearch.trace, which can be configured with trace_as.

METHODS

log_handle()

Returns an object which can handle the methods: debug(), debugf(), is_debug(), info(), infof(), is_info(), warning(), warningf(), is_warning(), error(), errorf(), is_error(), critical(), criticalf() and is_critical().

trace_handle()

Returns an object which can handle the methods: trace(), tracef() and is_trace().

trace_request()

    $logger->trace_request($cxn,\%request);

Accepts a Cxn object and request parameters and logs them if tracing is enabled.

trace_response()

    $logger->trace_response($cxn,$code,$response,$took);

Logs a successful HTTP response, where $code is the HTTP status code, $response is the HTTP body and $took is the time the request took in seconds

trace_error()

    $logger->trace_error($cxn,$error);

Logs a failed HTTP response, where $error is an Elasticsearch::Error object.

trace_comment()

    $logger->trace_comment($comment);

Used to insert debugging comments into trace output.

AUTHOR

Clinton Gormley <drtech@cpan.org>

COPYRIGHT AND LICENSE

This software is Copyright (c) 2014 by Elasticsearch BV.

This is free software, licensed under:

  The Apache License, Version 2.0, January 2004