訪問分析是SEO的一項重要工作,但統計、分析工具畢竟功能是針對大眾的,很多時候SEO需要一些特定的資料,是HTTP://www.aliyun.com/zixun/aggregation/10341.html"> 統計分析軟體、程式所不能提供的。 這樣,直接的Web日誌分析就是最合適的了,日誌中會記錄每一個訪問情況,只要按自己的意願提取、組合,就能得到想要的資料。
就這個問題與星箭聊了挺長時間,最後一致認為將日誌導入到SQL資料庫(MySQL & SQL Server)中,使用SQL語句分析是最方便的,需要什麼樣的資料,只要使用相應的SQL命令就能實現。
我的伺服器是Linux的,沒有 SQL Server,之前就沒再繼續這件事。 今天聊到這個話題時認真的搜索了一下,找到了使用MySQL分析日誌的第一步,記錄在此。
下一步的分析方法我有心得後會發佈在博客中,有興趣的朋友可以留意;同時,徵集精通于SQL語句的朋友,一起討論分析的各種方法,並分享給其他朋友。
導入Web日誌到MySQL資料庫的實現
1、修改Apache日誌格式
修改Web日誌格式為:
Logformat combined %>a,%ui,%un,[%tl],"%rm %ru HTTP/%rv",%Hs,%h","%{User-Agent}>h",%Ss:%Sh
明白的朋友應該一看就知道了,SQL需要導入的內容有特定的分隔符號,Apache的日誌預設是以空格分隔的,而有些內容(如狀態碼中的 200 610)也包含空格,這就無法準確的導入。
將日誌格式修改為以逗號分隔,就能準確的導入了。 還可以根據自己的需要,取消日誌格式中不需要的內容,減少日誌檔案大小。
2、建立MySQL6184.html">資料表
drop table if exists weblog;
create table weblog (
id int unsigned auto_increment PRIMARY KEY not null,
l_date date,
l_time time,
c_ip Varchar(15),
s_ip Varchar(15),
s_port Varchar(5),
method Varchar(10),
path Varchar(255),
query Varchar(255),
status Varchar(3),
domain Varchar(50),
system Varchar(200)
);
注:上面只是一個MySQL資料表結構範例,沒有與上一步日誌格式對應,請勿直接複製使用!
新建一個資料庫,資料表結構與日誌格式對應起來。
3、導入日誌到MySQL中
LOAD DATA INFILE '/日誌位置/日誌檔' INTO TABLE weblog FIELDS TERMINATED BY ',';
weblog 對應上面的資料表名。
第二步就是分析了,如上所說,有心得後再分享。
另外,從網上找到一個將IIS日誌導入到MySQL資料庫的.pl程式,原理相通的,需要的點這裡下載(Readme.txt為使用說明)。
作者:樂思蜀
原文:導入Web日誌到MySQL資料庫
版權所有,轉載時必須以連結形式注明作者和原出處並保留本聲明。