logstash #1

Supports: trusty
Add to new model


Installs the logstash indexer. Initially stand alone version with a dependency on elasticsearch as the backend provider.


This charm provides LogStash. logstash is a tool for managing events and logs. You can use it to collect logs, parse them, and store them for later use (like, for searching)

Supported I/O

Inputs : File - /var/log/syslog and some others Redis - configured to use redis as a message bus from logstash agents Outputs : embedded - embedded elasticsearch ... this is fine for starting off testing, but should really use a real cluster elasticsearch - creation relationship with elasticsearch charm


example 1 - Just the Indexer + Kibana

juju deploy cs:trusty/logstash
juju deploy cs:precise/kibana
juju add-relation kibana logstash
juju expose kibana


example 2 - Indexer + 2 x ElasticSearch + Kibana

juju deploy cs:trusty/elasticsearch
juju add-unit elasticsearch
juju deploy cs:trusty/logstash
juju add-relation logstash elasticsearch
juju deploy cs:trusty/kibana
juju add-relation kibana elasticsearch:rest
juju expose kibana


example 3 - Agent + Indexer + 2 x ElasticSearch + Kibana

juju deploy cs:trusty/elasticsearch
juju add-unit elasticsearch
juju deploy cs:trusty/logstash-indexer
juju add-relation elasticsearch:cluster logstash-indexer
juju deploy --repository=logstash local:precise/kibana
juju add-relation elasticsearch:rest kibana
juju expose kibana
juju deploy --repository=logstash local:precise/logstash-agent
juju add-relation logstash-agent logstash-indexer:input


The charm will fetch the logstash complete archive every time.

The charm has not been tested for scale and clustering, as each unit installs a stand-alone redis-daemon, it should be treated as a stand alone instance. This is inhereted behavior from the precise Logstash charm.


The charm supports installation from anywhere that python requests can reach and understand. By default it will install a recent revision (1.4.2 as of this writing) from the elasticsearch.org site. this is configurable with 2 options

juju set logstash logstash-source="https://download.elasticsearch.org/logstash/logstash/logstash-1.4.2.tar.gz" logstash-sum="d59ef579c7614c5df9bd69cfdce20ed371f728ff"

There is also a configuration option to add arbitrary packages pre-installation of logstash. The format is a space separated list.

juju set logstash extra-packages='vim byobu'

Contact Information


(string) Base64-encoded custom configuration content.
(string) Space separated list of extra apt packages to install.
(string) The logstash binary file to install to this charm.
(string) The checksum value for the logstash file.
(string) The parameters to pass to the nrpe plugin "check_tcp --ssl" to check certificate expiration date.
-D 30,14 -H -p 5043
(string) The parameters to pass to the nrpe plugin check_procs.
-a /opt/logstash/lib/logstash/runner.rb -c 1:1
(string) The parameters to pass to the nrpe plugin check_tcp.
--ssl -H localhost -p 5043 -c 0.3
(string) Used by the nrpe subordinate charms. A string that will be prepended to instance name to set the host name in nagios. So for instance the hostname would be something like: juju-myservice-0 If you're running multiple environments with the same services in them this allows you to differentiate between them.
(string) A comma-separated list of nagios servicegroups. If left empty, the nagios_context will be used as the servicegroup
(string) Base64-encoded SSL certificate
(string) Base64-encoded SSL key