浏览代码

- missing READMEs added

Jan Janak 17 年之前
父节点
当前提交
c4bddb54e2
共有 1 个文件被更改,包括 95 次插入0 次删除
  1. 95 0
      modules/db_flatstore/README

+ 95 - 0
modules/db_flatstore/README

@@ -0,0 +1,95 @@
+1. Flatstore Module
+
+Jan Janak
+
+   FhG FOKUS
+   <[email protected]>
+
+   Copyright © 2004, 2005 FhG FOKUS
+   Revision History
+   Revision $Revision$ $Date$
+     __________________________________________________________________
+
+   1.1. Overview
+
+        1.1.1. Rotating Log Files
+
+   1.2. Parameters
+
+        1.2.1. flush (integer)
+
+1.1. Overview
+
+   Flatstore is one of so-called SER database modules. It does not export
+   any functions executable from the configuration scripts, but it exports
+   a subset of functions from the database API and thus other module can
+   use it instead of, for example, mysql module.
+
+   The module does not export all functions of the database API, it
+   supports only one function, insert. The module is limited but very
+   fast. It is especially suitable for storing accounting information on
+   sites with extremely high traffic. If MySQL is too slow or if you get a
+   huge amount of accounting data then you can consider using this module.
+   Note that the acc module is the only module that was tested with
+   flastore.
+
+   The format of the files produced by this module is plain text. Each
+   line consists of several fields, fields are separated by | character.
+   New information is always appended at the end of the file, searching,
+   deleting and updating of existing data is not supported by the module.
+
+   The acc module can be configured to use flatstore module as database
+   backend using the db_url_parameter:
+modparam("acc", "db_url", "flatstore:/var/log/acc")
+
+   This configuration options tells acc module that it should use the
+   flatstore module and the flatstore module should create all files in
+   /var/log/acc directory. The directory must exist and SER processes must
+   have permissions to create files in that directory.
+
+   Name of files in that directory will follow the following pattern:
+<table_name>_<process_name>.log
+
+   For example, entries writen by SER process 8 into acc table would be
+   written in file acc_8.log. For each table there will be several files,
+   one file for every SER process that wrote some data into that table.
+   The main reason why there are several files for each table is that it
+   is much faster to have one file per process, because it does not
+   require any locking and thus SER processes will not block each other.
+   To get the complete data for a table you can simply concatenate the
+   contents of files with the same table name but different process id.
+
+1.1.1. Rotating Log Files
+
+   There is a new SER FIFO interface command called flat_rotate. When SER
+   receives the command then it will close and reopen all files used by
+   flatstore module. The rotation itself has to be done by another
+   application (such as logrotate). Follow these steps to rotate files
+   generated by flatstore module:
+     * Rename the files that you want to rotate:
+cd /var/log/acc
+mv acc_1.log acc_1.log.20050605
+mv acc_2.log acc_2.log.20050605
+mv acc_4.log acc_3.log.20050605
+...
+       Note that at this point SER will still be writing all data into the
+       renamed files.
+     * Send SER the fifo command to close and reopen the renamed files:
+serctl fifo flat_rotate
+       This will force SER to close the renamed files and open new ones
+       with original names, such as acc_1.log. New files will be open at
+       the point when SER has some data to write. It is normal that the
+       files will be not created immediately if there is no traffic on the
+       proxy server.
+     * Move the renamed files somewhere else and process them.
+
+1.2. Parameters
+
+   Revision History
+   Revision $Revision$ $Date$
+
+1.2.1. flush (integer)
+
+   Enable or disable flushing after each write.
+
+   Default value is 1.