Skip to content
Plugin for TCP input to fluentd using RELP, possibly with SSL
Ruby
Branch: master
Clone or download
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Permalink
Type Name Latest commit message Commit time
Failed to load latest commit information.
lib/fluent/plugin
test
.coveralls.yml
.gitignore
.travis.yml
CHANGELOG.md
Gemfile
LICENSE.txt
README.md
Rakefile
fluent-plugin-relp.gemspec

README.md

RELP input plugin

Plugin for input to fluentd using RELP protocol

this depends on relp ruby gem which host server-side ruby implementation, available here.

Gem Version Build Status Coverage Status

Installation

Add this line to your application's Gemfile:

gem 'fluent-plugin-relp'

Or install it yourself as:

$ gem install fluent-plugin-relp

just note that you will probably need ruby development libraries installed to do this.

You can also install through bundler and use rake test to run unit tests for plugin.

Usage

To use the plugin just add tou your fluent.conf file:

<source>
  @type relp
  #optionally, specify port on which to start relp server, defaults to 5170
  port XXXX
  #optionally, specify a tag with which to mark messages received over this connection 
  tag your_tag_for_relp
  #optionally, determine remote IP to bind to, by default binds to all incoming connections
  bind XX.XX.XX.XX
  #if you want to use TLS encryption, specify this config string
  ssl_config /path_to/certificate_file:/path_to/key_file:/path_to/certificate_authority_file
</source>

With the above set up your fluentd is ready to accept messages transported by RELP, for example logs sent by rsyslog's omrelp module, example of setting up (/etc/rsyslog.conf file):

module(load="omrelp")

*.* action(type="omrelp" 
	Target="your_fluentd_host_or_ip" 
	Port="5170_or_yours_set"
#	Add below part to use SSL encryption
	tls="on"
	tls.permittedPeer="SHA1:hash_of_your_certificate_file"
	tls.authMode="fingerprint"
	tls.mycert="/path_to/certificate_file"
	tls.myprivkey="/path_to/key_file"
	tls.cacert="/path_to/certificate_authority_file"
	)

make sure you have librelp and rsyslog relp plugin present on your system.

Also you need to make sure that things lige firewall and selinux are set up so they do not block communication on configured port(s) and adress(es).

Additionally, if you have problems estabilishing connection over network, it may help to increase timeouts for socket connection and/or RELP session on clients.

That is all you need to reliably send system logs to remote fluentd instance.

Contributing

Before filing a bug check whether you are using latest version AND latest version of Relp library. Bug reports and pull requests are welcome on GitHub at https://github.com/ViaQ/fluent-plugin-relp.

License

The gem is available as open source under the terms of the MIT License.

You can’t perform that action at this time.