summaryrefslogtreecommitdiffstats
path: root/doc
diff options
context:
space:
mode:
Diffstat (limited to 'doc')
-rw-r--r--doc/imptcp.html5
-rw-r--r--doc/imrelp.html83
-rw-r--r--doc/manual.html2
-rw-r--r--doc/mmcount.html58
-rw-r--r--doc/mmfields.html91
-rw-r--r--doc/omfwd.html33
-rw-r--r--doc/omprog.html30
-rw-r--r--doc/omrelp.html66
-rw-r--r--doc/rsyslog_conf_modules.html3
9 files changed, 357 insertions, 14 deletions
diff --git a/doc/imptcp.html b/doc/imptcp.html
index aece428d..f1a87fc9 100644
--- a/doc/imptcp.html
+++ b/doc/imptcp.html
@@ -102,6 +102,11 @@ of seconds (5 recommended) to activate rate-limiting.
</li>
<li><b>RateLimit.Burst</b> [number] - (available since 7.3.1) specifies the rate-limiting
burst in number of messages. Default is 10,000.
+<li><b>compression.mode</b><i>mode</i><br>
+<i>mode</i> is one of "none" or "stream:always".
+It is the counterpart to the compression modes set in
+<a href="omfile.html">omfile</a>.
+Please see it's documentation for details.
</li>
</ul>
<b>Caveats/Known Bugs:</b>
diff --git a/doc/imrelp.html b/doc/imrelp.html
index f7fcc4b3..4419cf6d 100644
--- a/doc/imrelp.html
+++ b/doc/imrelp.html
@@ -28,14 +28,84 @@ 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.</p>
-<p><b>Configuration Directives</b>:</p>
+<p><b>Module Parameters</b>:</p>
+<ul>
+ <li><b>Ruleset</b> &lt;name&gt;</br>
+ Binds the specified ruleset to <b>all</b> RELP listeners.
+</ul>
+<p><b>Input Parameters</b>:</p>
<ul>
<li><b>Port</b> &lt;port&gt;<br>
Starts a RELP server on selected port</li>
+<li><b>tls</b> (not mandatory, values "on","off", default "off")<br>
+If set to "on", the RELP connection will be encrypted by TLS,
+so that the data is protected against observers. Please note
+that both the client and the server must have set TLS to
+either "on" or "off". Other combinations lead to unpredictable
+results.
+</li>
+<li><b>tls.compression</b> (not mandatory, values "on","off", default "off")<br>
+The controls if the TLS stream should be compressed (zipped). While this
+increases CPU use, the network bandwidth should be reduced. Note that
+typical text-based log records usually compress rather well.
+</li>
+<li><b>tls.dhbits</b> (not mandatory, integer)<br>
+This setting controls how many bits are used for Diffie-Hellman key
+generation. If not set, the librelp default is used. For secrity
+reasons, at least 1024 bits should be used. Please note that the number
+of bits must be supported by GnuTLS. If an invalid number is given, rsyslog
+will report an error when the listener is started. We do this to be transparent
+to changes/upgrades in GnuTLS (to check at config processing time, we would need
+to hardcode the supported bits and keep them in sync with GnuTLS - this is
+even impossible when custom GnuTLS changes are made...).
+</li>
+<li><b>tls.permittedPeer</b> peer</br>
+Places access restrictions on this listener. Only peers which
+have been listed in this parameter may connect. The validation
+bases on the certificate the remote peer presents.<br>
+The <i>peer</i> parameter lists permitted certificate
+fingerprints. Note that it is an array parameter, so either
+a single or multiple fingerprints can be listed. When a
+non-permitted peer connects, the refusal is logged together
+with it's fingerprint. So if the administrator knows this was
+a valid request, he can simple add the fingerprint by copy and
+past from the logfile to rsyslog.conf.
+<br>To specify multiple fingerprints, just enclose them
+in braces like this:
+<br>tls.permittedPeer=["SHA1:...1", "SHA1:....2"]
+<br>To specify just a single peer, you can either
+specify the string directly or enclose it in braces.
+</li>
+<li><b>tls.authMode</b> mode</br>
+Sets the mode used for mutual authentication. Supported values are
+either "<i>fingerprint</i>" or "<i>name"</i>.
+<br>Fingerprint mode basically is what SSH
+does. It does not require a full PKI to be present, instead self-signed
+certs can be used on all peers. Even if a CA certificate is given, the
+validity of the peer cert is NOT verified against it. Only the
+certificate fingerprint counts.
+<br>In "name" mode, certificate validation happens. Here, the matching
+is done against the certificate's subjectAltName and, as a fallback,
+the subject common name. If the certificate contains multiple names,
+a match on any one of these names is considered good and permits the
+peer to talk to rsyslog.
+<li><b>tls.prioritystring</b> (not mandatory, string)<br>
+This parameter permits to specify the so-called "priority string" to
+GnuTLS. This string gives complete control over all crypto parameters,
+including compression setting. For this reason, when the prioritystring
+is specified, the "tls.compression" parameter has no effect and is
+ignored.
+<br>Full information about how to construct a priority string can be
+found in the GnuTLS manual. At the time of this writing, this
+information was contained in
+<a href="http://gnutls.org/manual/html_node/Priority-Strings.html">section 6.10 of the GnuTLS manual</a>.
+<br><b>Note: this is an expert parameter.</b> Do not use if you do
+not exactly know what you are doing.
+</li>
</ul>
<b>Caveats/Known Bugs:</b>
<ul>
-<li>ruleset can only be bound via legacy configuration format</li>
+<li>see description</li>
<li>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.</li>
@@ -45,20 +115,19 @@ not specific ones. This is due to a currently existing limitation in librelp.
<p><b>Sample:</b></p>
<p>This sets up a RELP server on port 20514.<br>
</p>
-<textarea rows="15" cols="60">module(load="imrelp") # needs to be done just once
+<textarea rows="5" cols="60">module(load="imrelp") # needs to be done just once
input(type="imrelp" port="20514")
</textarea>
<p><b>Legacy Configuration Directives</b>:</p>
<ul>
<li>InputRELPServerBindRuleset &lt;name&gt; (available in 6.3.6+)</br>
-Binds the specified ruleset to all RELP listeners.
+equivalent to: RuleSet
<li>InputRELPServerRun &lt;port&gt;<br>
equivalent to: Port</li>
</ul>
<b>Caveats/Known Bugs:</b>
<ul>
-<li>see description</li>
<li>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.</li>
@@ -68,14 +137,14 @@ not specific ones. This is due to a currently existing limitation in librelp.
<p><b>Sample:</b></p>
<p>This sets up a RELP server on port 20514.<br>
</p>
-<textarea rows="15" cols="60">$ModLoad imrelp # needs to be done just once
+<textarea rows="5" cols="60">$ModLoad imrelp # needs to be done just once
$InputRELPServerRun 20514
</textarea>
<p>[<a href="rsyslog_conf.html">rsyslog.conf overview</a>]
[<a href="manual.html">manual index</a>] [<a href="http://www.rsyslog.com/">rsyslog site</a>]</p>
<p><font size="2">This documentation is part of the
<a href="http://www.rsyslog.com/">rsyslog</a> project.<br>
-Copyright &copy; 2008-2011 by <a href="http://www.gerhards.net/rainer">Rainer
+Copyright &copy; 2008-2013 by <a href="http://www.gerhards.net/rainer">Rainer
Gerhards</a> and
<a href="http://www.adiscon.com/">Adiscon</a>.
Released under the GNU GPL version 3 or higher.</font></p>
diff --git a/doc/manual.html b/doc/manual.html
index bc57c136..8cb519a5 100644
--- a/doc/manual.html
+++ b/doc/manual.html
@@ -19,7 +19,7 @@ professional services</a> available directly from the source!</p>
<p><b>Please visit the <a href="http://www.rsyslog.com/sponsors">rsyslog sponsor's page</a>
to honor the project sponsors or become one yourself!</b> We are very grateful for any help towards the
project goals.</p>
-<p><b>This documentation is for version 7.4.1 (v7.4-stable branch) of rsyslog.</b>
+<p><b>This documentation is for version 7.5.0 (devel branch) of rsyslog.</b>
Visit the <i><a href="http://www.rsyslog.com/status">rsyslog status page</a></i></b>
to obtain current version information and project status.
</p><p><b>If you like rsyslog, you might
diff --git a/doc/mmcount.html b/doc/mmcount.html
new file mode 100644
index 00000000..1d06340d
--- /dev/null
+++ b/doc/mmcount.html
@@ -0,0 +1,58 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<html><head>
+<meta http-equiv="Content-Language" content="en">
+<title>mmcount</title></head>
+
+<body>
+<a href="rsyslog_conf_modules.html">back</a>
+
+<h1>mmcount</h1>
+<p><b>Module Name:&nbsp;&nbsp;&nbsp; mmcount</b></p>
+<p><b>Author: </b>Bala.FA &lt;barumuga@redhat.com&gt;</p>
+<p><b>Status: </b>Non project-supported module - contact author
+or rsyslog mailing list for questions
+<p><b>Available since</b>: 7.5.0</p>
+<p><b>Description</b>:</p>
+<p>
+<pre>
+ mmcount: message modification plugin which counts messages
+
+ This module provides the capability to count log messages by severity
+ or json property of given app-name. The count value is added into the
+ log message as json property named 'mmcount'
+
+ Example usage of the module in the configuration file
+
+ module(load="mmcount")
+
+ # count each severity of appname gluster
+ action(type="mmcount" appname="gluster")
+
+ # count each value of gf_code of appname gluster
+ action(type="mmcount" appname="glusterd" key="!gf_code")
+
+ # count value 9999 of gf_code of appname gluster
+ action(type="mmcount" appname="glusterfsd" key="!gf_code" value="9999")
+
+ # send email for every 50th mmcount
+ if $app-name == 'glusterfsd' and $!mmcount <> 0 and $!mmcount % 50 == 0 then {
+ $ActionMailSMTPServer smtp.example.com
+ $ActionMailFrom rsyslog@example.com
+ $ActionMailTo glusteradmin@example.com
+ $template mailSubject,"50th message of gf_code=9999 on %hostname%"
+ $template mailBody,"RSYSLOG Alert\r\nmsg='%msg%'"
+ $ActionMailSubject mailSubject
+ $ActionExecOnlyOnceEveryInterval 30
+ :ommail:;RSYSLOG_SyslogProtocol23Format
+ }
+</pre>
+
+<p>[<a href="rsyslog_conf.html">rsyslog.conf overview</a>] [<a href="manual.html">manual
+index</a>] [<a href="http://www.rsyslog.com/">rsyslog site</a>]</p>
+<p><font size="2">This documentation is part of the
+<a href="http://www.rsyslog.com/">rsyslog</a> project.<br>
+Copyright &copy; 2008-2013 by <a href="http://www.gerhards.net/rainer">Rainer Gerhards</a> and
+<a href="http://www.adiscon.com/">Adiscon</a>. Released under the GNU GPL
+version 3 or higher.</font></p>
+
+</body></html>
diff --git a/doc/mmfields.html b/doc/mmfields.html
new file mode 100644
index 00000000..885d6bca
--- /dev/null
+++ b/doc/mmfields.html
@@ -0,0 +1,91 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<html><head>
+<meta http-equiv="Content-Language" content="en">
+<title>Field Extraction Module (mmfields)</title></head>
+
+<body>
+<a href="rsyslog_conf_modules.html">back</a>
+
+<h1>Fields Extraction Module (mmfields)</h1>
+<p><b>Module Name:&nbsp;&nbsp;&nbsp; mmfields</b></p>
+<p><b>Author: </b>Rainer Gerhards &lt;rgerhards@adiscon.com&gt;</p>
+<p><b>Available since</b>: 7.5.1</p>
+<p><b>Description</b>:</p>
+<p>The mmfield module permits to extract fields. It is an alternate to using
+the property replacer field extraction capabilities. In contrast to the
+property replacer, all fields are extracted as once and stored inside the
+structured data part (more precisely: they become Lumberjack [JSON] properties).
+<p>Using this module is of special advantage if a field-based log format
+is to be processed, like for example CEF <b>and</b> and either a large
+number of fields is needed or a specific field is used multiple times
+inside filters. In these scenarios, mmfields potentially offers better
+performance than the property replacer of the RainerScript field extraction
+method. The reason is that mmfields extracts all fields as one big sweep,
+whereas the other methods extract fields individually, which requires
+multiple passes through the same data. On the other hand, adding field
+content to the rsyslog property dictionary also has some overhead,
+so for high-performance use cases it is suggested to do some performance
+testing before finally deciding which method to use. This is most important
+if only a smaller subset of the fields is actually needed.
+<p>In any case, mmfields provides a very handy and easy to use way to
+parse structured data into a it's individual data items. Again, a primiary
+use case was support for CEF (Common Event Format), which is made
+extremely easy to do with this module.
+<p>This module is implemented via the action interface. Thus it
+can be conditionally used depending on some prequisites.
+<p>&nbsp;</p>
+
+<p><b>Module Configuration Parameters</b>:</p>
+<p>Currently none.
+<p>&nbsp;</p>
+<p><b>Action Confguration Parameters</b>:</p>
+<ul>
+<li><b>separator</b> - separatorChar (default ',')<br>
+This is the character used to separate fields. Currently, only a single
+character is permitted, while the RainerScript method permits to
+specify multi-character separator strings. For CEF, this is not required.
+If there is actual need to support multi-character separator strings,
+support can relatively easy be added. It is suggested to request it on the
+rsyslog mailing list, together with the use case - we intend to add
+functionality only if there is a real use case behind the request
+(in the past we too-often implemented things that actually never got used).
+<br>The fields are named f<i>nbr</i>, where <i>nbr</i> is the field number
+starting with one and being incremented for each field.
+<li><b>jsonRoot</b> - path (default "!")<br>
+This parameters specifies into which json path the extracted fields shall
+be written. The default is to use the json root object itself.
+</ul>
+
+<p><b>Caveats/Known Bugs:</b>
+<ul>
+<li>Currently none.
+</ul>
+
+<p><b>Samples:</b></p>
+<p>This is a very simple use case where each message is
+parsed. The default separator character of comma is being used.
+<p><textarea rows="5" cols="60">module(load="mmfields")
+template(name="ftpl" type=string string="%$!%\n")
+action(type="omfields")
+action(type="omfile" file="/path/to/logfile" template="ftpl")
+</textarea>
+
+<p>The following sample is similar to the previous one, but
+this time the colon is used as separator and data is written
+into the "$!mmfields" json path.
+<p><textarea rows="5" cols="60">module(load="mmfields")
+template(name="ftpl" type=string string="%$!%\n")
+action(type="omfields" separator=":" jsonRoot="!mmfields")
+action(type="omfile" file="/path/to/logfile" template="ftpl")
+</textarea>
+
+
+<p>[<a href="rsyslog_conf.html">rsyslog.conf overview</a>] [<a href="manual.html">manual
+index</a>] [<a href="http://www.rsyslog.com/">rsyslog site</a>]</p>
+<p><font size="2">This documentation is part of the
+<a href="http://www.rsyslog.com/">rsyslog</a> project.<br>
+Copyright &copy; 2013 by <a href="http://www.gerhards.net/rainer">Rainer Gerhards</a> and
+<a href="http://www.adiscon.com/">Adiscon</a>. Released under the GNU GPL
+version 3 or higher.</font></p>
+
+</body></html>
diff --git a/doc/omfwd.html b/doc/omfwd.html
index 53f9e527..51aa58b5 100644
--- a/doc/omfwd.html
+++ b/doc/omfwd.html
@@ -35,7 +35,38 @@
Framing-Mode to be for forwarding. This affects only TCP-based protocols. It is ignored for UDP. In protocol engineering, ``framing'' means how multiple messages over the same connection are separated. Usually, this is transparent to users. Unfortunately, the early syslog protocol evolved, and so there are cases where users need to specify the framing. The traditional framing is nontransparent. With it, messages are end when a LF (aka ``line break'', ``return'') is encountered, and the next message starts immediately after the LF. If multi-line messages are received, these are essentially broken up into multiple message, usually with all but the first message segment being incorrectly formatted. The octet-counting framing solves this issue. With it, each message is prefixed with the actual message length, so that a receivers knows exactly where the message ends. Multi-line messages cause no problem here. This mode is very close to the method described in RFC5425 for TLS-enabled syslog. Unfortunately, only few syslogd implementations support octet-counted framing. As such, the traditional framing is set as default, even though it has defects. If it is known that the receiver supports octet-counted framing, it is suggested to use that framing mode. <br></li><br>
<li><strong>ZipLevel </strong>0..9 [default 0]<br>
- Compression level for messages. Rsyslog implements a proprietary capability to zip transmitted messages. Note that compression happens on a message-per-message basis. As such, there is a performance gain only for larger messages. Before compressing a message, rsyslog checks if there is some gain by compression. If so, the message is sent compressed. If not, it is sent uncompressed. As such, it is totally valid that compressed and uncompressed messages are intermixed within a conversation. <br>The compression level is specified via the usual factor of 0 to 9, with 9 being the strongest compression (taking up most processing time) and 0 being no compression at all (taking up no extra processing time). <br></li><br>
+ Compression level for messages.
+ <br>Up until rsyslog 7.5.1, this was the only compression setting that
+ rsyslog understood. Starting with 7.5.1, we have different compression
+ modes. All of them are affected by the ziplevel. If, however, no mode
+ is explicitely set, setting ziplevel also turns on "single"
+ compression mode, so pre 7.5.1 configuration will continue to work
+ as expected.
+ <br>The compression level is specified via the usual factor of 0 to 9, with 9 being the strongest compression (taking up most processing time) and 0 being no compression at all (taking up no extra processing time). <br></li><br>
+ <li><b>compression.mode</b><i>mode</i><br>
+ <i>mode</i> is one of "none", "single", or "stream:always". The
+ default is "none", in which no compression happens at all.
+ <br>In "single" compression mode, Rsyslog implements a proprietary
+ capability to zip transmitted messages. That compression happens
+ on a message-per-message basis. As such, there is a performance gain
+ only for larger messages. Before compressing a message, rsyslog checks
+ if there is some gain by compression. If so, the message is sent
+ compressed. If not, it is sent uncompressed. As such, it is totally
+ valid that compressed and uncompressed messages are intermixed
+ within a conversation.
+ <br>In "stream:always" compression mode the full stream is being
+ compressed. This also uses non-standard protocol and is compatible
+ only with receives that have the same abilities. This mode offers
+ potentially very high compression ratios. With typical syslog
+ messages, it can be as high as 95+% compression (so only one twentieth
+ of data is actually transmitted!). Note that this mode introduces
+ extra latency, as data is only sent when the compressor emits new
+ compressed data. For typical syslog messages, this can mean that
+ some hundered messages may be held in local buffers before they are
+ actually sent. This mode has been introduced in 7.5.1.
+ <br><b>Note: currently only imptcp supports receiving stream-compressed
+ data.</b>
+ <br></li><br>
<li><strong>RebindInterval </strong>integer<br>
Permits to specify an interval at which the current connection is broken and re-established. This setting is primarily an aid to load balancers. After the configured number of messages has been transmitted, the current connection is terminated and a new one started. Note that this setting applies to both TCP and UDP traffic. For UDP, the new ``connection'' uses a different source port (ports are cycled and not reused too frequently). This usually is perceived as a ``new connection'' by load balancers, which in turn forward messages to another physical target system. <br></li><br>
diff --git a/doc/omprog.html b/doc/omprog.html
index 471ab224..b4d13eec 100644
--- a/doc/omprog.html
+++ b/doc/omprog.html
@@ -25,7 +25,33 @@ con re-using existing binaries. For the time being, it simply is not done. In th
we may add an option for such pooling, provided that some demand for that is voiced.
You can also mimic the same effect by defining multiple rulesets and including them (at
the price of some slight performance loss).
-<p><b>Configuration Directives</b>:</p>
+
+<p>&nbsp;</p>
+
+<p><b>Module Parameters</b>:</p>
+<ul>
+ <li><strong>Template </strong>[templateName]<br>
+ sets a new default template for file actions.<br></li>
+
+</ul>
+<p>&nbsp;</p>
+<p><b>Action Parameters</b>:</p>
+<ul>
+ <li><strong>binary </strong>(The binary program to be executed including optional parameters.)<br>
+ Parameters are not required but can be specified, for more see the config sample below.<br></li><br>
+</ul>
+<p><b>Caveats/Known Bugs:</b></p><ul><li>None.</li></ul>
+<p><b>Sample:</b></p>
+<p>The following command writes all syslog messages into a file.</p>
+<textarea rows="5" cols="85">Module (load="omprog")
+*.* action(type="omprog"
+ binary="/pathto/omprog.py --parm1=\"value 1\" --parm2=value2"
+ template="RSYSLOG_TraditionalFileFormat")
+</textarea>
+
+<br><br>
+
+<p><b>Legacy Configuration Directives</b>:</p>
<ul>
<li><b>$ActionOMProgBinary</b> &lt;binary&gt;<br>
The binary program to be executed.
@@ -36,7 +62,7 @@ The binary program to be executed.
[<a href="manual.html">manual index</a>] [<a href="http://www.rsyslog.com/">rsyslog site</a>]</p>
<p><font size="2">This documentation is part of the <a href="http://www.rsyslog.com/">rsyslog</a>
project.<br>
-Copyright &copy; 2008-2011 by <a href="http://www.gerhards.net/rainer">Rainer
+Copyright &copy; 2008-2013 by <a href="http://www.gerhards.net/rainer">Rainer
Gerhards</a> and
<a href="http://www.adiscon.com/">Adiscon</a>.
Released under the GNU GPL version 3 or higher.</font></p>
diff --git a/doc/omrelp.html b/doc/omrelp.html
index 8858f884..a4208355 100644
--- a/doc/omrelp.html
+++ b/doc/omrelp.html
@@ -24,16 +24,76 @@ implementation).</p>
rsyslog 7.3.10. For older versions, legacy configuration directives
must be used.
<ul>
- <li><b>target </b>(mandatory)<br>
+ <li><b>target</b> (mandatory)<br>
The target server to connect to.
</li>
- <li><b>template </b>(not mandatory, default "RSYSLOG_ForwardFormat")<br>
+ <li><b>template</b> (not mandatory, default "RSYSLOG_ForwardFormat")<br>
Defines the template to be used for the output.
</li>
- <li><b>timeout </b>(not mandatory, default 90)<br>
+ <li><b>timeout</b> (not mandatory, default 90)<br>
Timeout for relp sessions. If set too low, valid sessions
may be considered dead and tried to recover.
</li>
+ <li><b>tls</b> (not mandatory, values "on","off", default "off")<br>
+ If set to "on", the RELP connection will be encrypted by TLS, so that the data is protected against observers. Please note that both the client and the server must have set TLS to either "on" or "off". Other combinations lead to unpredictable results.
+ </li>
+ <li><b>tls.compression</b> (not mandatory, values "on","off", default "off")<br>
+ The controls if the TLS stream should be compressed (zipped). While this
+ increases CPU use, the network bandwidth should be reduced. Note that
+ typical text-based log records usually compress rather well.
+ </li>
+ <li><b>tls.permittedPeer</b> peer</br>
+ Places access restrictions on this forwarder. Only peers which
+ have been listed in this parameter may be connected to.
+ This guards against rouge servers and man-in-the-middle
+ attacks. The validation
+ bases on the certficate the remote peer presents.<br>
+ The <i>peer</i> parameter lists permitted certificate
+ fingerprints. Note that it is an array parameter, so either
+ a single or multiple fingerprints can be listed. When a
+ non-permitted peer is connected to, the refusal is logged together
+ with it's fingerprint. So if the administrator knows this was
+ a valid request, he can simple add the fingerprint by copy and
+ past from the logfile to rsyslog.conf. It must be noted, though,
+ that this situation should usually not happen after initial
+ client setup and administrators should be alert in this case.
+ <br>Note that usually a single remote peer should be all that
+ is ever needed. Support for multiple peers is primarily included
+ in support of load balancing scenarios. If the connection
+ goes to a specific server, only one specific certificate is ever
+ expected (just like when connecting to a specific ssh server).
+ <br>To specify multiple fingerprints, just enclose them
+ in braces like this:
+ <br>tls.permittedPeer=["SHA1:...1", "SHA1:....2"]
+ <br>To specify just a single peer, you can either
+ specify the string directly or enclose it in braces.
+ </li>
+ <li><b>tls.authMode</b> mode</br>
+ Sets the mode used for mutual authentication. Supported values are
+ either "<i>fingerprint</i>" or "<i>name"</i>.
+ <br>Fingerprint mode basically is what SSH
+ does. It does not require a full PKI to be present, instead self-signed
+ certs can be used on all peers. Even if a CA certificate is given, the
+ validity of the peer cert is NOT verified against it. Only the
+ certificate fingerprint counts.
+ <br>In "name" mode, certificate validation happens. Here, the matching
+ is done against the certificate's subjectAltName and, as a fallback,
+ the subject common name. If the certificate contains multiple names,
+ a match on any one of these names is considered good and permits the
+ peer to talk to rsyslog.
+ <li><b>tls.prioritystring</b> (not mandatory, string)<br>
+ This parameter permits to specify the so-called "priority string" to
+ GnuTLS. This string gives complete control over all crypto parameters,
+ including compression setting. For this reason, when the prioritystring
+ is specified, the "tls.compression" parameter has no effect and is
+ ignored.
+ <br>Full information about how to construct a priority string can be
+ found in the GnuTLS manual. At the time of this writing, this
+ information was contained in
+ <a href="http://gnutls.org/manual/html_node/Priority-Strings.html">section 6.10 of the GnuTLS manual</a>.
+ <br><b>Note: this is an expert parameter.</b> Do not use if you do
+ not exactly know what you are doing.
+ </li>
</ul>
<p><b>Sample:</b></p>
<p>The following sample sends all messages to the central server
diff --git a/doc/rsyslog_conf_modules.html b/doc/rsyslog_conf_modules.html
index 18d6b8a1..b6b0748b 100644
--- a/doc/rsyslog_conf_modules.html
+++ b/doc/rsyslog_conf_modules.html
@@ -111,6 +111,9 @@ probably an excellent starting base for writing a new module. Currently, the fol
modules exist inside the source tree:
<ul>
<li><a href="mmanon.html">mmanon</a> - used to anonymize log messages.
+<li><a href="mmcount.html">mmcount</a> - message modification plugin which counts messages
+<li><a href="mmfields.html">mmfields</a> - used to extract fields from
+specially formatted messages (e.g. CEF)
<li><a href="mmnormalize.html">mmnormalize</a> - used to normalize log messages.
Note that this actually is a <b>generic</b> module.
<li><a href="mmjsonparse.html">mmjsonparse</a> - used to interpret CEE/lumberjack