summaryrefslogtreecommitdiffstats
path: root/doc/v3compatibility.html
diff options
context:
space:
mode:
authorRainer Gerhards <rgerhards@adiscon.com>2008-02-21 09:41:56 +0000
committerRainer Gerhards <rgerhards@adiscon.com>2008-02-21 09:41:56 +0000
commit227c44dbe0f3ce8ab465829c2d6114d5e6b38470 (patch)
treea15b84c5f20af5ac42687424e71fd20c5e61ad14 /doc/v3compatibility.html
parent4ff521048dbab0557c863c28321693e1f31c6a96 (diff)
downloadrsyslog-227c44dbe0f3ce8ab465829c2d6114d5e6b38470.tar.gz
rsyslog-227c44dbe0f3ce8ab465829c2d6114d5e6b38470.tar.xz
rsyslog-227c44dbe0f3ce8ab465829c2d6114d5e6b38470.zip
cleanup for 3.11.4v3-11-4
Diffstat (limited to 'doc/v3compatibility.html')
-rw-r--r--doc/v3compatibility.html196
1 files changed, 108 insertions, 88 deletions
diff --git a/doc/v3compatibility.html b/doc/v3compatibility.html
index 4a391f97..221d8302 100644
--- a/doc/v3compatibility.html
+++ b/doc/v3compatibility.html
@@ -1,119 +1,139 @@
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
-<html><head>
+<html><head><title>Compatibility notes for rsyslog v3</title>
-<title>Writing syslog Data to MySQL</title><meta name="KEYWORDS" content="syslog, mysql, syslog to mysql, howto"></head><body>
+<meta name="KEYWORDS" content="syslog, mysql, syslog to mysql, howto">
+</head><body>
<h1>Compatibility notes for rsyslog v3</h1>
- <p><small><i>Written by
- <a href="http://www.gerhards.net/rainer">Rainer
- Gerhards</a> (2007-12-17)</i></small></p>
-<p>Rsyslog aims to be a drop-in replacement for sysklogd. However, version 3 has
-some considerable enhancements, which lead to some backward compatibility issues
-both in regard to sysklogd and rsyslog v1 and v2.</p>
-<p>Rsyslog v3 is currently under initial development. Compatibility issues may
-be resolved, so be sure to check back often. Also, comments and suggestions are
-appreciated. Feedback right in time can now have a big impact on the route we
-take ;)</p>
+<p><small><i>Written by <a href="http://www.gerhards.net/rainer">Rainer Gerhards</a>
+(2007-12-17)</i></small></p>
+<p>Rsyslog aims to be a drop-in replacement for sysklogd.
+However, version 3 has some considerable enhancements, which lead to
+some backward compatibility issues both in regard to sysklogd and
+rsyslog v1 and v2.</p>
+<p>Rsyslog v3 is currently under initial development.
+Compatibility issues may be resolved, so be sure to check back often.
+Also, comments and suggestions are appreciated. Feedback right in time
+can now have a big impact on the route we take ;)</p>
<h2>inputs</h2>
-<p>With v2 and below, inputs were automatically started together with rsyslog.
-In v3, inputs are optional! They come in the form of plug-in modules.
-<font color="#ff0000"><b>At least one input module must be loaded to make
-rsyslog do any useful work.</b></font> The config file directives doc briefly
-lists which config statements are available by which modules.</p>
-<p>It is suggested that input modules be loaded in the top part of the config
-file. Here is an example, also highlighting the most important modules:</p>
-<p><b>$ModLoad immark.so&nbsp; # provides --MARK-- message capability<br>
+<p>With v2 and below, inputs were automatically started together
+with rsyslog. In v3, inputs are optional! They come in the form of
+plug-in modules.
+<font color="#ff0000"><b>At least one input module
+must be loaded to make rsyslog do any useful work.</b></font>
+The config file directives doc briefly lists which config statements
+are available by which modules.</p>
+<p>It is suggested that input modules be loaded in the top part
+of the config file. Here is an example, also highlighting the most
+important modules:</p>
+<p><b>$ModLoad immark.so&nbsp; # provides --MARK--
+message capability<br>
$ModLoad imudp.so&nbsp; # provides UDP syslog reception<br>
-$ModLoad imtcp.so&nbsp; # provides TCP syslog reception and GSS-API (if compiled
-to support it)<br>
-$ModLoad imuxsock.so # provides support for local system logging (e.g. via
-logger command)<br>
-$ModLoad imklog.so # provides kernel logging support (previously done by rklogd)</b></p>
+$ModLoad imtcp.so&nbsp; # provides TCP syslog reception and GSS-API
+(if compiled to support it)<br>
+$ModLoad imuxsock.so # provides support for local system logging (e.g.
+via logger command)<br>
+$ModLoad imklog.so # provides kernel logging support (previously done
+by rklogd)</b></p>
<h2>command line options</h2>
-<p>A number of command line options have been removed. New config file
-directives have been added for them. Once we implement compatibiltiy mode, these
-options will return, but only if running in non-v3-native mode.</p>
+<p>A number of command line options have been removed. New config
+file directives have been added for them. Once we implement
+compatibiltiy mode, these options will return, but only if running in
+non-v3-native mode.</p>
<h2>-m command line option</h2>
-<p>The -m command line option is ignored for the time being. There is no default
-mark period. If you need a 20 minute mark period you need to</p>
+<p>The -m command line option is ignored for the time being.
+There is no default mark period. If you need a 20 minute mark period
+you need to</p>
<p><b>$ModLoad immark.so&nbsp; # wherever this is<br>
$MarkMessageInterval 1800 # 30 minutes</b></p>
<h2>-r command line option</h2>
-<p>Is also no longer available. Use the <b>$UDPSeverRun &lt;port&gt;</b> config file
-directives. You can now also set the local address the server should listen to
-via <b>$UDPServerAddress &lt;ip&gt;</b> config directive.</p>
-<p>The following example configures an UDP syslog server at the local address
-192.0.2.1 on port 514:</p>
+<p>Is also no longer available. Use the <b>$UDPSeverRun
+&lt;port&gt;</b> config file directives. You can now also
+set the local address the server should listen to via <b>$UDPServerAddress
+&lt;ip&gt;</b> config directive.</p>
+<p>The following example configures an UDP syslog server at the
+local address 192.0.2.1 on port 514:</p>
<p><b>$ModLoad imudp.so<br>
-$UDPSeverAddress 192.0.2.1 # this MUST be before the $UDPServerRun directive!<br>
+$UDPSeverAddress 192.0.2.1 # this MUST be before the $UDPServerRun
+directive!<br>
$UDPServerRun 514</b></p>
-<p>"$UDPServerAddress *" means listen on all local interfaces. This is the
-default if no directive is specified.</p>
-<p>Please note that now multiple listeners are supported. For example, you can
-do the following:</p>
+<p>"$UDPServerAddress *" means listen on all local interfaces.
+This is the default if no directive is specified.</p>
+<p>Please note that now multiple listeners are supported. For
+example, you can do the following:</p>
<p><b>$ModLoad imudp.so<br>
-$UDPSeverAddress 192.0.2.1 # this MUST be before the $UDPServerRun directive!<br>
+$UDPSeverAddress 192.0.2.1 # this MUST be before the $UDPServerRun
+directive!<br>
$UDPServerRun 514<br>
$UDPSeverAddress * # all local interfaces<br>
$UDPServerRun 1514</b></p>
-<p>These config file settings run two listeners: one at192.0.2.1:514 and one on
-port 1514, which listens on all local interfaces.</p>
+<p>These config file settings run two listeners: one
+at192.0.2.1:514 and one on port 1514, which listens on all local
+interfaces.</p>
<h2>Default port for UDP (and TCP) Servers</h2>
-<p>Please note that with pre-v3 rsyslogd, a service database lookup was made
-when a UDP server was started and no port was configured. Only if that failed,
-the IANA default of 514 was used. For TCP serves, this lookup was never done and
-514 always used if no specific port was configured. For consitency, both TCP and
-UDP now use port 514 as default. If a lookup is desired, you need to specify it
-in the "Run" directive, e.g. "<i>$UDPServerRun syslog</i>".</p>
+<p>Please note that with pre-v3 rsyslogd, a service database
+lookup was made when a UDP server was started and no port was
+configured. Only if that failed, the IANA default of 514 was used. For
+TCP serves, this lookup was never done and 514 always used if no
+specific port was configured. For consitency, both TCP and UDP now use
+port 514 as default. If a lookup is desired, you need to specify it in
+the "Run" directive, e.g. "<i>$UDPServerRun syslog</i>".</p>
<h2>klogd</h2>
-<p>klogd has (finally) been replaced by a loadable input module. To enable klogd
-functionality, do</p>
+<p>klogd has (finally) been replaced by a loadable input module.
+To enable klogd functionality, do</p>
<p><b>$ModLoad imklog.so</b></p>
-<p>A limited set of klogd command line settings is now supported via
-rsyslog.conf. That set of configuration directives is to be expanded. So far, we
-support:</p>
+<p>A limited set of klogd command line settings is now supported
+via rsyslog.conf. That set of configuration directives is to be
+expanded. So far, we support:</p>
<p>$klogSymbolsTwice [on/off]<br>
$DebugPrintKernelSymbols [on/off] # spits *a lot* of messages at startup</p>
<h2>Queue Modes for the Main Message Queue</h2>
-<p>Either "FixedArray" or "LinkedList" is recommended. "Direct" is available,
-but should not be used except for a very good reason ("Direct" disables queueing
-and will potentially lead to message loss on the input side).</p>
+<p>Either "FixedArray" or "LinkedList" is recommended. "Direct"
+is available, but should not be used except for a very good reason
+("Direct" disables queueing and will potentially lead to message loss
+on the input side).</p>
<h1>TODO List</h1>
-<p>I have decided to move the todo list for v3 also into this document. After
-all, it is kind of a compatibility issue ;) But, more seriously, I think this is
-a good place to make sure nothing is forgotten. Remember that as of now, rsyslog
-v3 is in its early stage of development and so there definitely are some nits
-that will give you grief. This section here tells you what it is.</p>
+<p>I have decided to move the todo list for v3 also into this
+document. After all, it is kind of a compatibility issue ;) But, more
+seriously, I think this is a good place to make sure nothing is
+forgotten. Remember that as of now, rsyslog v3 is in its early stage of
+development and so there definitely are some nits that will give you
+grief. This section here tells you what it is.</p>
<h2>-c option</h2>
-<p>needs to be implemented. So far, only -c3 is supported. Everything else does
-not change anything but just provides a warning message. In short: there is no
-backwards compatibility yet.</p>
+<p>needs to be implemented. So far, only -c3 is supported.
+Everything else does not change anything but just provides a warning
+message. In short: there is no backwards compatibility yet.</p>
<h2>Thread Termination</h2>
-<p>Thread termination in mode 1 needs to be looked at. I begin to think that it
-is OK if we simply cancel the thread, because we already have a different
-cleanup function. Otherwise, there is a potential for a race condition after we
-unblocked the TermOK mutex but before select() is entered. If the signal then
-occurs, we may have a problem. However, I would like to create the other input
-modules first so that I have more working experience with termination
-requirements. Again, I think this will lead to changes in thread termination.</p>
-<p>So far, this issue is resolved, but there is still some code present that
-needs to go away (right now disabled). I keep it in because I will make the
-final decision based on experience gained during creation of input modules.</p>
+<p>Thread termination in mode 1 needs to be looked at. I begin to
+think that it is OK if we simply cancel the thread, because we already
+have a different cleanup function. Otherwise, there is a potential for
+a race condition after we unblocked the TermOK mutex but before
+select() is entered. If the signal then occurs, we may have a problem.
+However, I would like to create the other input modules first so that I
+have more working experience with termination requirements. Again, I
+think this will lead to changes in thread termination.</p>
+<p>So far, this issue is resolved, but there is still some code
+present that needs to go away (right now disabled). I keep it in
+because I will make the final decision based on experience gained
+during creation of input modules.</p>
<h2>Call Encapsulation</h2>
-<p>In an ideal world, the modules should call back only to some well-defined and
-specifically exported interface functions. Right now, we do not have an ideal
-world and the input modules make some calls back into the core. This needs to be
-re-thought but is accepted for the time being.</p>
+<p>In an ideal world, the modules should call back only to some
+well-defined and specifically exported interface functions. Right now,
+we do not have an ideal world and the input modules make some calls
+back into the core. This needs to be re-thought but is accepted for the
+time being.</p>
<h2>No real Modules yet</h2>
-<p>As already said in "Call Encapsulation", the modules look like such, but are
-not really able to work stand alone. The worst in this regard are</p>
+<p>As already said in "Call Encapsulation", the modules look like
+such, but are not really able to work stand alone. The worst in this
+regard are</p>
<ul>
- <li>imudp/omfwd/syslogd.c</li>
- <li>imtcp</li>
+<li>imudp/omfwd/syslogd.c</li>
+<li>imtcp</li>
</ul>
-<p>But the others are not necessarily better. I have moved the code to the
-modules, because now at least the majority of code is where it belongs to. But
-there are still a large number of global variables, cross-function calls and the
-like. This needs to be solved when we try to claim a real modular design. That's
-not an easy task, but, hey, aren't we up for that...? ;)</p>
+<p>But the others are not necessarily better. I have moved the
+code to the modules, because now at least the majority of code is where
+it belongs to. But there are still a large number of global variables,
+cross-function calls and the like. This needs to be solved when we try
+to claim a real modular design. That's not an easy task, but, hey,
+aren't we up for that...? ;)</p>
<p>&nbsp;</p>
</body></html> \ No newline at end of file