back
RELP Input Module
Module Name: imrelp
Author: Rainer Gerhards
Description:
Provides the ability to receive syslog messages via the
reliable RELP protocol. This module requires librelp to be
present on the system. From the user's point of view, imrelp works much
like imtcp or imgssapi, except that no message loss can occur. Please
note that with the currently supported relp protocol version, a minor
message duplication may occur if a network connection between the relp
client and relp server breaks after the client could successfully send
some messages but the server could not acknowledge them. The window of
opportunity is very slim, but in theory this is possible. Future
versions of RELP will prevent this. Please also note that rsyslogd may
lose a few messages if rsyslog is shutdown while a network conneciton
to the server is broken and could not yet be recovered. Future version
of RELP support in rsyslog will prevent that. Please note that both
scenarios also exists with plain tcp syslog. RELP, even with the small
nits outlined above, is a much more reliable solution than plain tcp
syslog and so it is highly suggested to use RELP instead of plain tcp.
Clients send messages to the RELP server via omrelp.
Configuration Directives:
- Port <port>
Starts a RELP server on selected port
- KeepAlive <on/off> (available in 8.1.4+)
enable of disable keep-alive packets at the tcp socket layer. The default is
to disable them.
- KeepAlive.Probes <number> (available in 8.1.4+)
The number of unacknowledged probes to send before considering the connection dead and notifying the application layer.
The default, 0, means that the operating system defaults are used. This has only
effect if keep-alive is enabled. The functionality may not be available on
all platforms.
- KeepAlive.Interval <number> (available in 8.1.4+)
The interval between subsequent keepalive probes, regardless of what the connection has exchanged in the meantime.
The default, 0, means that the operating system defaults are used. This has only
effect if keep-alive is enabled. The functionality may not be available on
all platforms.
- KeepAlive.Time <number> (available in 8.1.4+)
The interval between the last data packet sent (simple ACKs are not considered data) and the first keepalive probe; after the connection is marked to need keepalive, this counter is not used any further.
The default, 0, means that the operating system defaults are used. This has only
effect if keep-alive is enabled. The functionality may not be available on
all platforms.
Caveats/Known Bugs:
- ruleset can only be bound via legacy configuration format
- To obtain the remote system's IP address, you need to have at least
librelp 1.0.0 installed. Versions below it return the hostname instead
of the IP address.
- Contrary to other inputs, the ruleset can only be bound to all listeners,
not specific ones. This is due to a currently existing limitation in librelp.
Sample:
This sets up a RELP server on port 20514.
Legacy Configuration Directives:
- InputRELPServerBindRuleset <name> (available in 6.3.6+)
Binds the specified ruleset to all RELP listeners.
- InputRELPServerRun <port>
equivalent to: Port
Caveats/Known Bugs:
- see description
- To obtain the remote system's IP address, you need to have at least
librelp 1.0.0 installed. Versions below it return the hostname instead
of the IP address.
- Contrary to other inputs, the ruleset can only be bound to all listeners,
not specific ones. This is due to a currently existing limitation in librelp.
Sample:
This sets up a RELP server on port 20514.
[rsyslog.conf overview]
[manual index] [rsyslog site]
This documentation is part of the
rsyslog project.
Copyright © 2008-2011 by Rainer
Gerhards and
Adiscon.
Released under the GNU GPL version 3 or higher.