Use this documentation with care! It describes
the outdated version 7, which was actively
developed around 2014 and is considered dead by the
This documentation reflects the latest update of the v7-stable branch. It describes the 7.6.8 version, which was never released. As such, it contains some content that does not apply to any released version.
To obtain the doc that properly matches your installed v7 version, obtain the doc set from your distro. Each version of rsyslog contained the version that exactly matches it.
As general advise, it is strongly suggested to upgrade to the current version supported by the rsyslog project. The current version can always be found on the right-hand side info box on the rsyslog web site.
Note that there is only limited rsyslog community support available for the outdated v7 version (officially we do not support it at all, but we usually are able to answer simple questions). If you need to stick with v7, it probably is best to ask your distribution for support.
Type: global configuration directive
This option specifies the prefix character to be used for control character escaping (see option $EscapeControlCharactersOnReceive). By default, it is ‘', which is backwards-compatible with sysklogd. Change it to ‘#’ in order to be compliant to the value that is somewhat suggested by Internet-Draft syslog-protocol.
IMPORTANT: do not use the ‘ character. This is reserved and will most probably be used in the future as a character delimiter. For the same reason, the syntax of this directive will probably change in future releases.
$EscapeControlCharactersOnReceive # # as of syslog-protocol