From 706fb36966f2c3c90946b3c4bb10f16eb2ab0eb5 Mon Sep 17 00:00:00 2001 From: Rainer Gerhards Date: Tue, 10 Apr 2007 06:39:11 +0000 Subject: added doc: generic syslogd architecture --- doc/generic_design.html | 149 ++++++++++++++++++++++++++++++++++++++++++++++++ doc/manual.html | 2 +- 2 files changed, 150 insertions(+), 1 deletion(-) create mode 100644 doc/generic_design.html diff --git a/doc/generic_design.html b/doc/generic_design.html new file mode 100644 index 00000000..03a55fae --- /dev/null +++ b/doc/generic_design.html @@ -0,0 +1,149 @@ + + +syslogd generic design + + +

Generic design of a syslogd

+

Written 2007-04-10 by +Rainer Gerhards

+

The text below describes a generic approach on how a syslogd can be +implemented. I created this description for some other project, where it was not +used. Instead of throwing it away, I thought it would be a good addition to the +rsyslog documentation. While rsyslog differs in details from the description +below, it is sufficiently close to it. Further development of rsyslog will +probably match it even closer to the description.

+

If you intend to read the rsyslog source code, I recommend reading this +document here first. You will not find the same names and not all of the +concepts inside rsyslog. However, I think your understanding will benefit from +knowing the generic architecture.

+
+
+   +-----------------+
+   | "remote" PLOrig |
+   +-----------------+
+       |
+       I  +--------+-----+-----+          +-----+-------+------+-----+
+       P  | PLOrig | GWI | ... |          | GWO | Store | Disc | ... |
+       C  +--------+-----+-----+          +-----+-------+------+-----+
+       |        |                                          ^
+       v        v                                          |
+      +--------------+        +------------+          +--------------+
+      | PLGenerator  |        |  RelayEng  |          | CollectorEng |
+      +--------------+        +------------+          +--------------+
+             |                      ^                       ^
+             |                      |                       |
+             v                      v                       |
+      +-------------+         +------------+          +--------------+
+      |   PLG Ext   |         | RelEng Ext |          | CollcEng Ext |
+      +-------------+         +------------+          +--------------+
+             |                      ^                       ^
+             |                      |                       |
+             v                      v                       |
+      +--------------------------------------------------------------+
+      |                      Message Router                          |
+      +--------------------------------------------------------------+
+                         |                            ^
+                         v                            |
+      +--------------------------------------------------------------+
+      |           Message CoDec (e.g. RFC 3164, RFCYYYY)             |
+      +--------------------------------------------------------------+
+                         |                            ^
+                         v                            |
+      +---------------------+-----------------------+----------------+
+      |    transport UDP    |    transport TLS      |      ...       |
+      +---------------------+-----------------------+----------------+
+
+                Generic Syslog Application Architecture
+
+ +

+ + diff --git a/doc/manual.html b/doc/manual.html index c5ae724f..8e15cc91 100644 --- a/doc/manual.html +++ b/doc/manual.html @@ -22,7 +22,7 @@ helps. Learn how to help the rsyslog project.

  • rsyslogd man page
  • configuration file syntax (rsyslog.conf)
  • a commented sample rsyslog.conf -
  • rsyslog bug list
  • rsyslog packages +
  • rsyslog bug list
  • rsyslog packages
  • backgrounder on generic syslog application design

    We have some in-depth papers on