10點集群的web_log是如何集中統計.要方案?
1.每台WEB_LOG集中存儲放在一個NFS或GFS掛載的目錄
2.NAS存儲
3.SAN存儲區域網
尋找開源高效的.集中日誌分佈系統.
《解決方案》
回復 #1 todayhero 的帖子
http://linux.chinaunix.net/bbs/forum-75-1.html
這個FastDFS應該是可以考慮的
還有是否考慮過使用監控monitor系統去處理這個問題了
具體的還是要結合目前的應用架構實現或變更
《解決方案》
日誌放在各自的機器上或放在nfs或共享存儲設備上都行。日誌可用/bin/sort -m -t " " -k 4 -o 的方式合併,因為日誌文件是按時間來排序的,所以合併起來並不是很慢。最後就用awstatus統計就是了。
統計腳本:
[root@awstats ~]# cat /usr/local/shell/awstats.sh
#!/bin/sh
logdir=/web/logs
ha1dir=/web/ha1
ha2dir=/web/ha2
ha1ip=10.11.12.124
ha2ip=10.11.12.125
logfile=access-`date -d "yesterday" +%Y%m%d`.log
/usr/bin/rsync -avtz --delete ${ha1ip}::logs $ha1dir
/usr/bin/rsync -avtz --delete ${ha2ip}::logs $ha2dir
if [ -f ${ha1dir}/${logfile} ] && [ -f ${ha2dir}/${logfile} ]
then
/bin/sort -m -t " " -k 4 -o ${logdir}/${logfile} ${ha1dir}/${logfile} ${ha2dir}/${logfile}
elif [ -f ${ha1dir}/${logfile} ]
then
/bin/mv ${ha1dir}/${logfile} ${logdir}/${logfile}
elif [ -f ${ha2dir}/${logfile} ]
then
/bin/mv ${ha2dir}/${logfile} ${logdir}/${logfile}
fi
if [ -f ${logdir}/${logfile} ]
then
/usr/bin/find ${logdir} -mtime +7 -exec rm -f {} \;
/var/www/awstats/awstats.pl --update --config=www.ihompy.com
fi
[ 本帖最後由 阿輝 於 2009-2-20 15:20 編輯 ]
《解決方案》
回復 #3 阿輝 的帖子
簡單 易行
《解決方案》
回復 #2 kns1024wh 的帖子
1.FastDFS非常不方便.需要需要第三方php java api才能訪問.並不能直接訪問.也就是不支持ls sort cd這些系統命令.
2.NFS也不是很好的辦法.會出現單點故障.NFS會出現單故障.而且也不適合大併發大訪問量的日誌處理.
像大家的方案不如放在本地然後sftp ftp傳到一台日誌伺服器進行獨自處理.我的要求越來越多.
還有併發大的網站通常不記錄日誌.那統計又如何而來呢?處理日誌會增加IO和CPU負擔.尤其是一天5G的日誌.
[ 本帖最後由 todayhero 於 2009-2-23 17:31 編輯 ]