NAME
Log::Log4perl::Appender::Elasticsearch - implements appending to Elasticsearch
DESCRIPTION
This is a simple appender for writing log entries to Elasticsearch via Index API.
Log::Log4perl::Appender::Elasticsearch::Bulk does the same task by using Bulk API.
VERSION
Version 0.06
SYNOPSIS
use Log::Log4perl;
Log::Log4perl->init(\<<'HERE');
log4perl.logger=DEBUG, ES
log4perl.appender.ES = Log::Log4perl::Appender::Elasticsearch
log4perl.appender.ES.layout = Log::Log4perl::Layout::NoopLayout
log4perl.appender.ES.body.level = %p
log4perl.appender.ES.body.module = %M
log4perl.appender.ES.body.line = %L
log4perl.appender.ES.nodes = localhost:9200
log4perl.appender.ES.index = log4perl
log4perl.appender.ES.type = entry
log4perl.appender.ES.use_https = 0
log4perl.appender.ES.user_agent.timeout = 5
log4perl.appender.ES.headers.User-Agent = foo
HERE
Log::Log4perl::get_logger()->info("OK");
# look up:
# curl -XPOST 'http://localhost:9200/log4perl/_search' -d \
# '{"query": {"query_string": {"query": "level:INFO AND message:OK"}}}'
# ...
# "_source": {
# "module": "main::__ANON__",
# "line": "60",
# "level": "INFO",
# "message": "OK"
# }
OPTIONS
nodes
a comma separeted list of nodes. The message will be sent to the next node only if previous request failed
index
The name of the elasticsearch index the message will be stored in.
type
The name of the type in given index the message belongs to.
use_https
0|1 global https setting for all nodes
the individual https setting possible too:
log4perl.appender.ES.nodes = https://user:password@node1:9200,localhost:9200
user_agent
LWP::UserAgent parameters.
log4perl.appender.ES.user_agent.timeout = 5
headers
HTTP::Headers parameters
log4perl.appender.ES.headers.User-Agent = foo
AUTHOR
Alexei Pastuchov <palik at cpan.org>
REPOSITORY
https://github.com/p-alik/Log-Log4perl-Appender-Elasticsearch.git
LICENSE AND COPYRIGHT
Copyright 2014, 2015 by Alexei Pastuchov <palik at cpan.org>.
This library is free software; you can redistribute it and/or modify it under the same terms as Perl itself.