将apache访问日志存储到mysql

pvcm50d1  于 2021-06-20  发布在  Mysql
关注(0)|答案(1)|浏览(270)

我引用这个链接将访问信息记录到mysql数据库中。
下面是我的数据库结构
apachelogs.web\u访问\u日志

+------------------+----------------------+------+-----+---------+-------+
| Field            | Type                 | Null | Key | Default | Extra |
+------------------+----------------------+------+-----+---------+-------+
| id               | char(19)             | YES  |     | NULL    |       |
| agent            | varchar(255)         | YES  |     | NULL    |       |
| bytes_sent       | int(10) unsigned     | YES  |     | NULL    |       |
| child_pid        | smallint(5) unsigned | YES  |     | NULL    |       |
| cookie           | varchar(255)         | YES  |     | NULL    |       |
| machine_id       | varchar(25)          | YES  |     | NULL    |       |
| request_file     | varchar(255)         | YES  |     | NULL    |       |
| referer          | varchar(255)         | YES  |     | NULL    |       |
| remote_host      | varchar(50)          | YES  |     | NULL    |       |
| remote_logname   | varchar(50)          | YES  |     | NULL    |       |
| remote_user      | varchar(50)          | YES  |     | NULL    |       |
| request_duration | smallint(5) unsigned | YES  |     | NULL    |       |
| request_line     | varchar(255)         | YES  |     | NULL    |       |
| request_method   | varchar(10)          | YES  |     | NULL    |       |
| request_protocol | varchar(10)          | YES  |     | NULL    |       |
| request_time     | char(28)             | YES  |     | NULL    |       |
| request_uri      | varchar(255)         | YES  |     | NULL    |       |
| request_args     | varchar(255)         | YES  |     | NULL    |       |
| server_port      | smallint(5) unsigned | YES  |     | NULL    |       |
| ssl_cipher       | varchar(25)          | YES  |     | NULL    |       |
| ssl_keysize      | smallint(5) unsigned | YES  |     | NULL    |       |
| ssl_maxkeysize   | smallint(5) unsigned | YES  |     | NULL    |       |
| status           | smallint(5) unsigned | YES  |     | NULL    |       |
| time_stamp       | int(10) unsigned     | YES  |     | NULL    |       |
| virtual_host     | varchar(255)         | YES  |     | NULL    |       |
+------------------+----------------------+------+-----+---------+-------+

当从浏览器接收到请求时,我看到大多数列值都为空,如下所示:

+------+-------+------------+-----------+--------+------------+--------------+---------+-------------+----------------+-------------+------------------+--------------+----------------+------------------+--------------+-------------+--------------+-------------+------------+-------------+----------------+--------+------------+--------------+
| id   | agent | bytes_sent | child_pid | cookie | machine_id | request_file | referer | remote_host | remote_logname | remote_user | request_duration | request_line | request_method | request_protocol | request_time | request_uri | request_args | server_port | ssl_cipher | ssl_keysize | ssl_maxkeysize | status | time_stamp | virtual_host |
+------+-------+------------+-----------+--------+------------+--------------+---------+-------------+----------------+-------------+------------------+--------------+----------------+------------------+--------------+-------------+--------------+-------------+------------+-------------+----------------+--------+------------+--------------+
| -    | -     |          0 |      NULL | NULL   | NULL       | NULL         | -       | ::1         | NULL           | -           |                0 | NULL         | NULL           | HTTP/1.0         | NULL         | NULL        | NULL         |        NULL | NULL       |        NULL |           NULL |    408 | 1531980584 | 192.168.4.18 |
+------+-------+------------+-----------+--------+------------+--------------+---------+-------------+----------------+-------------+------------------+--------------+----------------+------------------+--------------+-------------+--------------+-------------+------------+-------------+----------------+--------+------------+--------------+
1 row in set (0.02 sec)

缺少大多数请求参数。让我知道我必须修改什么,以便记录所有属性及其相应的值。
谢谢

jmo0nnb3

jmo0nnb31#

由于'id'列宽不匹配,apache2无法将日志正确写入mysql数据库。在中创建的默认宽度 web_access_log 表19应该增加到25。如果25没有帮助,请用更大的宽度再试一次。
完成此操作后,mysql日志会自动开始更新,而不会出现任何其他问题。

相关问题