apache中與日志有關(guān)的模塊
在維護(hù)服務(wù)器的工作中,日志占很大的一部分,本文詳細(xì)介紹了Apache服務(wù)器與日志相關(guān)的模塊。 軟件
mod_log_sql 把日志記到mysql中的模塊
準(zhǔn)備工作(安裝apache)
./configure --prefix=/www/apache --disable-module=all --enable-module=alias \
--enable-module=access --enable-module=auth --enable-module=log_config --enable-module=log_agen \
--enable-module=log_common \
--enable-module=dir --enable-module=mime --enable-module=so
make
make install
Core模塊,提供ErrorLog,LogLevel
ErrorLog /www/apache/logs/error_log #定義error log的存放位置
LogLevel warn #定義error log的級別。只有滿足級別的事件才被記錄
log_config模塊
LogFormat format [nickname] #定義訪問日志的格式
LogFormat "%{User-agent}i" agent
Mozilla/4.0 (compatible; MSIE 5.01; Windows NT 5.0)
LogFormat "%h %l %u %t \"%r\" %>;s %b" common
192.168.0.15 - - [26/Sep/2003:18:22:09 +0800] "GET / HTTP/1.1" 404 272
LogFormat中參數(shù)含義
%a 訪問者ip
%A local ip
%B 不包括HTTP 頭發(fā)送的數(shù)據(jù)字節(jié)數(shù)
%b 以CLF格式表示的發(fā)送字節(jié)數(shù)
%c 在response后的連接狀態(tài)
%f 請求的文件名
%h 客戶端host
%H 請求使用的協(xié)議
%m 請求的方法get,put...
%P 提供服務(wù)的端口
%p 為請求提供服務(wù)的子進(jìn)程ID
%r 請求的第一行
%s status/
%u remote user
%U 請求的URL path
CustomLog file|pipe format
CustomLog logs/access.log common
CustomLog "|/bin/gzip -c >;>; logs/access.log.gz" common
mod_log_mysql模塊
這個apache模塊允許你把日志記錄到mysql數(shù)據(jù)庫中去。Combined Log Format格式會被記錄到數(shù)據(jù)庫中。
DSO方式安裝該模塊
# tar zxf mod_log_sql.tar.gz -C /usr/local/src
# cd /usr/local/src/mod_log_sql
修改Makefile文件,修改下面的路徑信息以符合你的安裝
APACHEINSTALLED:
APACHEHEADERS: 用'locate httpd.h'查找路徑
MYSQLLIBRARIES: 用'locate libmysqlclient.so'查找路徑
MYSQLHEADERS: 用'locate mysql.h'查找路徑
#make dso
#make dsoinstall
為使用mod_log_mysql準(zhǔn)備mysql
創(chuàng)建數(shù)據(jù)庫accesslog
mysqladmin -u username -p create accesslog
mysql accesslog < /path/mod_log_sql/create_tables.sql
grant insert on accesslog.* to weblog@localhost identified by 'pass';
把下面兩行加入httpd.conf
LoadModule sql_log_module libexec/mod_log_sql.so
AddModule mod_log_sql.c
LogSQLLoginInfo localhost weblog pass
LogSQLDatabase accesslog
LogSQLSocketFile /tmp/mysql.sock
LogSQLTransferLogTable access_log
重起服務(wù)
#apachectl restart
ok!mod_log_sql的安裝配置就到這里了。網(wǎng)站運(yùn)行一段時間以后你可以從mysql數(shù)據(jù)庫里獲得訪問日志了
關(guān)鍵字:apache 日志 模塊
新文章:
- CentOS7下圖形配置網(wǎng)絡(luò)的方法
- CentOS 7如何添加刪除用戶
- 如何解決centos7雙系統(tǒng)后丟失windows啟動項(xiàng)
- CentOS單網(wǎng)卡如何批量添加不同IP段
- CentOS下iconv命令的介紹
- Centos7 SSH密鑰登陸及密碼密鑰雙重驗(yàn)證詳解
- CentOS 7.1添加刪除用戶的方法
- CentOS查找/掃描局域網(wǎng)打印機(jī)IP講解
- CentOS7使用hostapd實(shí)現(xiàn)無AP模式的詳解
- su命令不能切換root的解決方法
- 解決VMware下CentOS7網(wǎng)絡(luò)重啟出錯
- 解決Centos7雙系統(tǒng)后丟失windows啟動項(xiàng)
- CentOS下如何避免文件覆蓋
- CentOS7和CentOS6系統(tǒng)有什么不同呢
- Centos 6.6默認(rèn)iptable規(guī)則詳解