1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163
|
Legacy Global Configuration Statements
======================================
Global configuration statements, as their name implies, usually affect
some global features. However, some also affect main queues, which
are "global" to a ruleset.
True Global Directives
----------------------
.. toctree::
:glob:
options/rsconf1_abortonuncleanconfig
options/rsconf1_debugprintcfsyslinehandlerlist
options/rsconf1_debugprintmodulelist
options/rsconf1_debugprinttemplatelist
options/rsconf1_failonchownfailure
options/rsconf1_generateconfiggraph
options/rsconf1_includeconfig
options/rsconf1_mainmsgqueuesize
options/rsconf1_maxopenfiles
options/rsconf1_moddir
options/rsconf1_modload
options/rsconf1_umask
options/rsconf1_resetconfigvariables
- **$MaxMessageSize** <size\_nbr>, default 8k - allows to specify
maximum supported message size (both for sending and receiving). The
default should be sufficient for almost all cases. Do not set this
below 1k, as it would cause interoperability problems with other
syslog implementations.
**Important:** In order for this directive to work correctly,
it **must** be placed right at the top of ``rsyslog.conf``
(before any input is defined).
Change the setting to e.g. 32768 if you would like to support large
message sizes for IHE (32k is the current maximum needed for IHE). I
was initially tempted to set the default to 32k, but there is a some
memory footprint with the current implementation in rsyslog.
If you intend to receive Windows Event Log data (e.g. via
`EventReporter <http://www.eventreporter.com/>`_), you might want to
increase this number to an even higher value, as event log messages
can be very lengthy ("$MaxMessageSize 64k" is not a bad idea). Note:
testing showed that 4k seems to be the typical maximum for **UDP**
based syslog. This is an IP stack restriction. Not always ... but
very often. If you go beyond that value, be sure to test that
rsyslogd actually does what you think it should do ;) It is highly
suggested to use a TCP based transport instead of UDP (plain TCP
syslog, RELP). This resolves the UDP stack size restrictions.
Note that 2k, is the smallest size that must be
supported in order to be compliant to the upcoming new syslog RFC
series.
- **$LocalHostName** [name] - this directive permits to overwrite the
system hostname with the one specified in the directive. If the
directive is given multiple times, all but the last one will be
ignored. Please note that startup error messages may be issued with
the real hostname. This is by design and not a bug (but one may argue
if the design should be changed ;)). Available since 4.7.4+, 5.7.3+,
6.1.3+.
- **$LogRSyslogStatusMessages** [**on**/off] - If set to on (the
default), rsyslog emits message on startup and shutdown as well as
when it is HUPed. This information might be needed by some log
analyzers. If set to off, no such status messages are logged, what
may be useful for other scenarios. [available since 4.7.0 and 5.3.0]
- **$DefaultRuleset** [name] - changes the default ruleset for unbound
inputs to the provided *name* (the default default ruleset is named
"RSYSLOG\_DefaultRuleset"). It is advised to also read our paper on
:doc:`using multiple rule sets in rsyslog <../../concepts/multi_ruleset>`.
- **$DefaultNetstreamDriver** <drivername>, the default
:doc:`network stream driver <../../concepts/netstrm_drvr>` to use.
Defaults to ptcp.
- **$DefaultNetstreamDriverCAFile** </path/to/cafile.pem>
- **$DefaultNetstreamDriverCertFile** </path/to/certfile.pem>
- **$DefaultNetstreamDriverKeyFile** </path/to/keyfile.pem>
- **$NetstreamDriverCaExtraFiles** </path/to/extracafile.pem> - This
directive allows to configure multiple additional extra CA files.
This is intended for SSL certificate chains to work appropriately,
as the different CA files in the chain need to be specified.
It must be remarked that this directive only works with the OpenSSL driver.
- **$RepeatedMsgContainsOriginalMsg** [on/**off**] - "last message
repeated n times" messages, if generated, have a different format
that contains the message that is being repeated. Note that only the
first "n" characters are included, with n to be at least 80
characters, most probably more (this may change from version to
version, thus no specific limit is given). The bottom line is that n
is large enough to get a good idea which message was repeated but it
is not necessarily large enough for the whole message. (Introduced
with 4.1.5). Once set, it affects all following actions.
- **$OptimizeForUniprocessor** - This directive is no longer supported.
While present in versions prior to 8.32.0, the directive had no effect
for many years. Attempts to use the directive now results in a warning.
- **$PreserveFQDN** [on/**off**) - if set to off (legacy default to remain
compatible to sysklogd), the domain part from a name that is within
the same domain as the receiving system is stripped. If set to on,
full names are always used.
- **$WorkDirectory** <name> (directory for spool and other work files. Do
**not** use trailing slashes)
- `$PrivDropToGroup <droppriv.html>`_
- `$PrivDropToGroupID <droppriv.html>`_
- `$PrivDropToUser <droppriv.html>`_
- `$PrivDropToUserID <droppriv.html>`_
- **$Sleep** <seconds> - puts the rsyslog main thread to sleep for the
specified number of seconds immediately when the directive is
encountered. You should have a good reason for using this directive!
- **$LocalHostIPIF** <interface name> - (available since 5.9.6) - if
provided, the IP of the specified interface (e.g. "eth0") shall be
used as fromhost-ip for local-originating messages. If this
directive is not given OR the interface cannot be found (or has no IP
address), the default of "127.0.0.1" is used. Note that this
directive can be given only once. Trying to reset will result in an
error message and the new value will be ignored. Please note that
modules must have support for obtaining the local IP address set via
this directive. While this is the case for rsyslog-provided modules,
it may not always be the case for contributed plugins.
**Important:** This directive shall be placed **right at the top of
rsyslog.conf**. Otherwise, if error messages are triggered before
this directive is processed, rsyslog will fix the local host IP to
"127.0.0.1", what than can not be reset.
- **$ErrorMessagesToStderr** [**on**\ \|off] - direct rsyslogd error
message to stderr (in addition to other targets)
- **$SpaceLFOnReceive** [on/**off**] - instructs rsyslogd to replace LF
with spaces during message reception (sysklogd compatibility aid).
This is applied at the beginning of the parser stage and cannot
be overridden (neither at the input nor parser level). Consequently,
it affects all inputs and parsers.
main queue specific Directives
------------------------------
Note that these directives modify ruleset main message queues.
This includes the default ruleset's main message queue, the one
that is always present. To do this, specify directives outside of
a ruleset definition.
To understand queue parameters, read
:doc:`queues in rsyslog <../../concepts/queues>`.
- **$MainMsgQueueCheckpointInterval** <number>
- **$MainMsgQueueDequeueBatchSize** <number> [default 32]
- **$MainMsgQueueDequeueSlowdown** <number> [number is timeout in
*micro*\ seconds (1000000us is 1sec!), default 0 (no delay). Simple
rate-limiting!]
- **$MainMsgQueueDiscardMark** <number> [default 98% of queue size]
- **$MainMsgQueueDiscardSeverity** <severity> [either a textual or
numerical severity! default 4 (warning)]
- **$MainMsgQueueFileName** <name>
- **$MainMsgQueueHighWaterMark** <number> [default 90% of queue size]
- **$MainMsgQueueImmediateShutdown** [on/**off**]
- **$MainMsgQueueLowWaterMark** <number> [default 70% of queue size]
- **$MainMsgQueueMaxFileSize** <size\_nbr>, default 1m
- **$MainMsgQueueTimeoutActionCompletion** <number> [number is timeout in
ms (1000ms is 1sec!), default 1000, 0 means immediate!]
- **$MainMsgQueueTimeoutEnqueue** <number> [number is timeout in ms (1000ms
is 1sec!), default 2000, 0 means discard immediately]
- **$MainMsgQueueTimeoutShutdown** <number> [number is timeout in ms
(1000ms is 1sec!), default 0 (indefinite)]
- **$MainMsgQueueWorkerTimeoutThreadShutdown** <number> [number is timeout
in ms (1000ms is 1sec!), default 60000 (1 minute)]
- **$MainMsgQueueType** [**FixedArray**/LinkedList/Direct/Disk]
- **$MainMsgQueueSaveOnShutdown** [on/**off**]
- **$MainMsgQueueWorkerThreads** <number>, num worker threads, default 2,
recommended 1
- **$MainMsgQueueWorkerThreadMinumumMessages** <number>, default queue size/number of workers
|