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.
log_toParameters 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_asBy 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_toParameters 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_asBy 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.
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.