rsyslog #10

  • By charmers
  • Latest version (#10)
  • trusty
  • Stable

Description

Rsyslog is a multi-threaded implementation of syslogd (a system utility
providing support for message logging), with features that include:

  • reliable syslog over TCP, SSL/TLS and RELP
  • on-demand disk buffering
  • email alerting
  • writing to MySQL or PostgreSQL databases (via separate output plugins)
  • permitted sender lists
  • filtering on any part of the syslog message
  • on-the-wire message compression
  • fine-grained output format control
  • failover to backup destinations
  • enterprise-class encrypted syslog relaying

This is a simple rsyslogd logging server. It is most interesting
when paired with the rsyslog-forwarder subordinate charm.

General

This charm provides support for setting up a simple rsyslogd logging server.

Usage method

On this example we are going to deploy mysql

juju deploy mysql

Then you must deploy this charm

juju deploy rsyslog primary-rsyslog

Then you can deploy a rsyslog-forwarder-ha charm, which will forward all the syslog
messages from a specific service to this rsyslog server.

juju deploy rsyslog-forwarder-ha

Then relate both services

juju add-relation rsyslog-forwarder-ha mysql

Then you can deploy your rsyslog aggregators servers:

juju deploy rsyslog primary

Once your rsyslog aggregators are ready, you can relate them with your forwarder.

juju add-relation rsyslog-forwarder-ha primary-rsyslog

Once you have your rsyslog ports opened. You can change try this charm by running

juju ssh mysql/0

Then create a logger entry

mysql/0$ logger "testing"

Then see if the entry is being forwarded correctly:

juju ssh primary-rsyslog/0 
primary-rsyslog/0$ grep testing /var/log/syslog

Setting the protocol

By default rsyslog charms uses the UDP protocol, but also RELP or tcp can be used.

juju set rsyslog protocol="relp"
juju set rsyslog-forwarder-ha protocol="relp"

Forwarding logs to a system outside of the Juju environment

For forwarding within the Juju environment use the subordinate charm rsyslog-forwarder-ha but to
forward the aggregated logs outside of the Juju environment you set the forward_* options.

juju set rsyslog forward_host="elk.my.domain"
juju set rsyslog forward_protocol="tcp"
juju set rsyslog forward_port="514"

Contact Information

Mantainer: jorge.niedbalski@canonical.com
Bugs: https://bugs.launchpad.net/charms/+source/rsyslog

Configuration

protocol
(string) Transport protocol to use available options: udp, relp, tcp
udp
messages_rotate
(int) Number of days to rotate /var/log/messages and other associated files
4
forward_port
(string) The port on the forward_host to send logs to.
514
forward_protocol
(string) Transport protocol to use with the forward_host available options: udp, relp, tcp
tcp
forward_options
(string) Options to add to the forward config, currently only used by RELP
forward_host
(string) A host to forward all logs to.
forward_selector
(string) Syslog style selector to specify which logs to forward. For example '*.crit' or 'auth.*'
*.*
syslog_rotate
(int) Number of days to rotate /var/log/syslog file
7
nova_logs
(boolean) Have an individual log file for each compute node as well as an aggregated log that contains nova logs from all nodes