diff options
Diffstat (limited to 'README')
-rw-r--r-- | README | 42 |
1 files changed, 25 insertions, 17 deletions
@@ -1,35 +1,42 @@ | |||
1 | $Id: README,v 1.5 2002/04/21 23:01:53 helios Exp $ | 1 | $Id: README,v 1.6 2002/05/14 21:47:15 helios Exp $ |
2 | 2 | ||
3 | 3 | ||
4 | Homepage | 4 | Homepage |
5 | -------- | 5 | -------- |
6 | http://www.grubbybaby.com/mod_log_mysql/ | 6 | http://www.grubbybaby.com/mod_log_sql/ |
7 | |||
8 | 7 | ||
9 | 8 | ||
10 | Approach | 9 | Approach |
11 | -------- | 10 | -------- |
11 | This project was formerly known as mod_log_mysql. It has been renamed | ||
12 | to mod_log_sql in order to reflect the project goal of | ||
13 | database-inspecificity. The module currently supports MySQL, and | ||
14 | development for other database backends is underway. | ||
12 | 15 | ||
13 | In order to save speed and overhead, links are kept alive in between | 16 | In order to save speed and overhead, links are kept alive in between |
14 | queries. This module uses one SQL link per httpd process. Among other | 17 | queries. This module uses one SQL link per httpd process. Among other |
15 | things, this means that this module supports logging into only one | 18 | things, this means that this module supports logging into only one |
16 | MySQL server, and for now, also, only one SQL database. | 19 | MySQL server, and for now, also, only one SQL database. But that's a |
20 | small tradeoff compared to the blinding speed of this module. | ||
17 | 21 | ||
18 | Virtual hosts are supported in the same manner they are in the regular | 22 | Virtual hosts are supported in the same manner they are in the regular |
19 | logging modules. If you specify a different table for a virtual | 23 | logging modules. You define some basic 'global' directives in the |
20 | host it will be used, otherwise the 'general' would be used. | 24 | main server config, then you define more specific 'local' directives |
25 | inside each virtualhost stanza. | ||
21 | 26 | ||
22 | SQL links are opened by each child process when it is born. Error reporting | 27 | SQL links are opened by each child process when it is born. Error reporting |
23 | is robust throughout and will let you know about database issues | 28 | is robust throughout and will let you know about database issues |
24 | in the standard Apache error-log for the server or virtual server. | 29 | in the standard Apache error-log for the server or virtual server. |
25 | 30 | ||
26 | A robust "preserve" capability has now been implemented as well. This | 31 | A robust "preserve" capability has now been implemented. This permits |
27 | permits the module to preserve any failed INSERT commands to a local | 32 | the module to preserve any failed INSERT commands to a local file on |
28 | file on its machine. In any situation that the database is unavailable -- | 33 | its machine. In any situation that the database is unavailable -- e.g. |
29 | e.g. the network fails, you reboot the machine, etc. -- mod_log_mysql | 34 | the network fails, you reboot the db host, etc. -- mod_log_sql will |
30 | will note this in the error log and begin appending its log entries to | 35 | note this in the error log and begin appending its log entries to the |
31 | the preserve file. At the time that your MySQL server returns to service, | 36 | preserve file (which is created with the user & group ID of the running |
32 | each of these preserve files is easily imported because it is stored in SQL: | 37 | Apache process, e.g. "nobody" on many Linux installations). At the time |
38 | that your MySQL server returns to service, each of these preserve files | ||
39 | is easily imported because it is simply a series of SQL insert statements: | ||
33 | 40 | ||
34 | # mysql -uadminuser -p mydbname < /tmp/mysql-preserve | 41 | # mysql -uadminuser -p mydbname < /tmp/mysql-preserve |
35 | 42 | ||
@@ -41,11 +48,11 @@ Supported directives | |||
41 | Please see the web-based documentation for full explanation of all | 48 | Please see the web-based documentation for full explanation of all |
42 | supported run-time directives. | 49 | supported run-time directives. |
43 | 50 | ||
44 | http://www.grubbybaby.com/mod_log_mysql/directives.html | 51 | http://www.grubbybaby.com/mod_log_sql/directives.html |
45 | 52 | ||
46 | See the FAQ for some handy examples: | 53 | See the FAQ for some handy examples: |
47 | 54 | ||
48 | http://www.grubbybaby.com/mod_log_mysql/faq.html | 55 | http://www.grubbybaby.com/mod_log_sql/faq.html |
49 | 56 | ||
50 | 57 | ||
51 | What gets logged by default? | 58 | What gets logged by default? |
@@ -65,8 +72,9 @@ Notes | |||
65 | 72 | ||
66 | * You will customarily set most of your run-time configuration directives | 73 | * You will customarily set most of your run-time configuration directives |
67 | on a per-virtualserver basis, with only MySQLMassVirtualHosting, | 74 | on a per-virtualserver basis, with only MySQLMassVirtualHosting, |
68 | MySQLLoginInfo and MySQLDatabase 'outside' in the main server config. | 75 | MySQLLoginInfo, MySQLDatabase, MySQLSocketFile, MySQLCreateTables, |
69 | Any directives other than those in the main config do NOT get inherited | 76 | and MySQLMassVirtualHosting 'outside' in the main server config. Any |
77 | directives other than those in the main config do NOT get inherited | ||
70 | by the virutal servers. | 78 | by the virutal servers. |
71 | 79 | ||
72 | * The 'time_stamp' field is stored in an UNSIGNED INTEGER column, in the | 80 | * The 'time_stamp' field is stored in an UNSIGNED INTEGER column, in the |