如何用SARG日志分析器來(lái)分析Squid日志
SARG是一款基于網(wǎng)絡(luò)的工具,它可以分析Squid日志,并以更詳細(xì)的方式展示分析。系統(tǒng)管理員可以利用SARG來(lái)監(jiān)視哪些網(wǎng)站被訪問了,并跟蹤訪問量最大的網(wǎng)站和用戶。本文包含了SARG配置工作。SARG提供了很多有用的特性,但是分析一個(gè)原始Squid日志文件并不直接。比如,你如何分析下面Squid日志中的時(shí)間戳和數(shù)字?
1404788985.046 12416 172.17.1.23 TCP_MISS/200 4169 CONNECT stats.pusher.com:443 - DIRECT/173.255.223.127 -
1404788986.124 174 172.17.1.23 TCP_MISS/200 955 POST http://ocsp.digicert.com/ - DIRECT/117.18.237.29 application/ocsp-response
1404788989.738 342 172.17.1.23 TCP_MISS/200 3890 CONNECT www.google.com:443 - DIRECT/74.125.200.106 -
1404788989.757 226 172.17.1.23 TCP_MISS/200 942 POST http://clients1.google.com/ocsp - DIRECT/74.125.200.113 application/ocsp-response
1404788990.839 3939 172.17.1.23 TCP_MISS/200 78944 CONNECT fbstatic-a.akamaihd.net:443 - DIRECT/184.26.162.35 -
1404788990.846 2148 172.17.1.23 TCP_MISS/200 118947 CONNECT fbstatic-a.akamaihd.net:443 - DIRECT/184.26.162.35 -
1404788990.849 2151 172.17.1.23 TCP_MISS/200 76809 CONNECT fbstatic-a.akamaihd.net:443 - DIRECT/184.26.162.35 -
1404788991.140 611 172.17.1.23 TCP_MISS/200 110073 CONNECT fbstatic-a.akamaihd.net:443 - DIRECT/184.26.162.35 –
我們使用yum來(lái)安裝安裝必要的依賴。
在啟動(dòng)時(shí)加載必要的服務(wù)
# chkconfig httpd on; chkconfig crond on
現(xiàn)在我們下載并解壓SARG
上一節(jié)教程中,我們展示了如何在CentOS上使用Squid配置透明代理。Squid提供了很多有用的特性,但是分析一個(gè)原始Squid日志文件并不直接。比如,你如何分析下面Squid日志中的時(shí)間戳和數(shù)字?
1404788985.046 12416 172.17.1.23 TCP_MISS/200 4169 CONNECT stats.pusher.com:443 - DIRECT/173.255.223.127 -
1404788986.124 174 172.17.1.23 TCP_MISS/200 955 POST http://ocsp.digicert.com/ - DIRECT/117.18.237.29 application/ocsp-response
1404788989.738 342 172.17.1.23 TCP_MISS/200 3890 CONNECT www.google.com:443 - DIRECT/74.125.200.106 -
1404788989.757 226 172.17.1.23 TCP_MISS/200 942 POST http://clients1.google.com/ocsp - DIRECT/74.125.200.113 application/ocsp-response
1404788990.839 3939 172.17.1.23 TCP_MISS/200 78944 CONNECT fbstatic-a.akamaihd.net:443 - DIRECT/184.26.162.35 -
1404788990.846 2148 172.17.1.23 TCP_MISS/200 118947 CONNECT fbstatic-a.akamaihd.net:443 - DIRECT/184.26.162.35 -
1404788990.849 2151 172.17.1.23 TCP_MISS/200 76809 CONNECT fbstatic-a.akamaihd.net:443 - DIRECT/184.26.162.35 -
1404788991.140 611 172.17.1.23 TCP_MISS/200 110073 CONNECT fbstatic-a.akamaihd.net:443 - DIRECT/184.26.162.35 –
我們使用yum來(lái)安裝安裝必要的依賴。
在啟動(dòng)時(shí)加載必要的服務(wù)
# chkconfig httpd on; chkconfig crond on
現(xiàn)在我們下載并解壓SARG
# tar zxvf sarg-2.3.8.tar.gz
# cd sarg-2.3.8
注意: 對(duì)于64位的Linux,log.c的源代碼需要用下面的文件打補(bǔ)丁。
< if (fprintf(ufile->file, "%s\t%s\t%s\t%s\t%"PRIi64"\t%s\t%ld\t%s\n",dia,hora,ip,url,nbytes,code,elap_time,smartfilter)<=0) {
---
> if (fprintf(ufile->file, "%s\t%s\t%s\t%s\t%"PRIi64"\t%s\t%ld\t%s\n",dia,hora,ip,url,(int64_t)nbytes,code,elap_time,smartfilter)<=0) {
1513c1513
< fprintf(fp_log, "%s\t%s\t%s\t%s\t%s\t%"PRIi64"\t%s\t%ld\t%s\n",dia,hora,user,ip,url,nbytes,code,elap_time,smartfilter);
---
> fprintf(fp_log, "%s\t%s\t%s\t%s\t%s\t%"PRIi64"\t%s\t%ld\t%s\n",dia,hora,user,ip,url,(int64_t)nbytes,code,elap_time,smartfilter);
1564c1564
< printf("LEN=\t%"PRIi64"\n",nbytes); ---
> printf("LEN=\t%"PRIi64"\n",(int64_t)nbytes);
如下繼續(xù)并編譯/安裝SARG
# make
# make install
SARG安裝之后,配置文件可以按你的要求修改。下面是一個(gè)SARG配置的例子。
access_log /var/log/squid/access.log
temporary_dir /tmp
output_dir /var/www/html/squid-reports
date_format e ## We use Europian DD-MM-YYYY format here ##
## we don’t want multiple reports for single day/week/month ##
overwrite_report yes
現(xiàn)在是時(shí)候測(cè)試運(yùn)行了,我們用調(diào)試模式運(yùn)行sarg來(lái)查看是否存在錯(cuò)誤。
如果i一切正常,sarg會(huì)根系Squid日志,并在/var/www/html/squid-reports下創(chuàng)建報(bào)告。報(bào)告也可以在瀏覽器中通過地址http://<服務(wù)器IP>/squid-reports/訪問。
SARG可以用于創(chuàng)建日、周、月度報(bào)告。時(shí)間范圍用“-d”參數(shù)來(lái)指定,值的形式很可能為day-n、 week-n 或者 month-n,n的值為向前推移的天/周/月的數(shù)量。比如,使用week-1,SARG會(huì)生成之前一星期的報(bào)告。使用day-2,SARG會(huì)生成之前兩天的報(bào)告。
作為演示,我們會(huì)準(zhǔn)備一個(gè)計(jì)劃任務(wù)來(lái)每天運(yùn)行SARG。
#!/bin/sh
/usr/local/bin/sarg -d day-1
文件需要可執(zhí)行權(quán)限。
現(xiàn)在SARG應(yīng)該會(huì)每天準(zhǔn)備關(guān)于Squid管理的流量報(bào)告。這些報(bào)告可以很容易地通過SARG網(wǎng)絡(luò)接口訪問。
以上就是利用SARG工具,來(lái)分析分析Squid日志,并以更詳細(xì)的方式展示分析。系統(tǒng)管理員可以利用SARG來(lái)監(jiān)視哪些網(wǎng)站被訪問了,并跟蹤訪問量最大的網(wǎng)站和用戶。
另外腳本之家小編找來(lái)的這篇文章還包含了SARG配置工作。你可以進(jìn)一步自定義配置來(lái)滿足自己的要求。希望能幫助大家,謝謝有點(diǎn)。
相關(guān)文章

集成系統(tǒng)級(jí)Claw模式! Deepin 官宣發(fā)布 25.1 版本
deepin操作系統(tǒng)發(fā)布了最新的 25.1 版本更新,該版本基于 deepin 25 正式版積累的多輪內(nèi)測(cè)成果,在 AI 能力、內(nèi)核版本、桌面環(huán)境、文件管理器以及系統(tǒng)安全等方面進(jìn)行了更新2026-04-13
又一代老硬件退場(chǎng)! Linux 內(nèi)核正式放棄Intel 486 CPU
在過去的幾十年間,CPU 的架構(gòu)已經(jīng)經(jīng)歷了飛速發(fā)展,x86 系列就是其中之一,而 i486 則屬于該系列中的一個(gè),當(dāng)前,i486 的CPU處理器已經(jīng)夠老,從 Linux 7.1 開始將不再有對(duì)2026-04-09
趕緊收藏! 全網(wǎng)最全 Linux 命令總結(jié)
我把 Linux 中最常用、最實(shí)用、最常被問到的命令按照實(shí)際使用場(chǎng)景分類整理,方便你快速查閱和記憶,內(nèi)容覆蓋日常運(yùn)維、開發(fā)調(diào)試、性能分析、文件處理、網(wǎng)絡(luò)、安全、系統(tǒng)管2026-04-08
一分鐘內(nèi)檢查L(zhǎng)inux服務(wù)器性能? 9個(gè)性能檢測(cè)常用的基本命令
今天我們來(lái)看看Linux系統(tǒng)中用于性能監(jiān)控的一系列命令,這些命令可以快速查看機(jī)器的負(fù)載情況,詳細(xì)請(qǐng)看下文介紹2026-03-18
從零基礎(chǔ)到精通! 適合高級(jí)用戶的15款Linux發(fā)行版推薦
Linux作為操作系統(tǒng)領(lǐng)域靈活性和可定制性的基石,提供了大量滿足不同用戶需求的發(fā)行版,今天分享適合高級(jí)用戶的15款Linux發(fā)行版2026-03-10
開箱即用? 這4個(gè)高手級(jí)Linux發(fā)行版遠(yuǎn)沒你想象的那么安全易用
如果你正在糾結(jié)用哪個(gè)發(fā)行版?零基礎(chǔ)新手別被“高端”“極客”“聲明式”這些詞沖昏頭腦,先用好用的,再慢慢進(jìn)階2026-03-10
這幾款SSH工具真的夠用了! Linux好用的ssh工具推薦
在Linux上使用SSH,您需要安裝一個(gè)SSH客戶端,今天整理找到的8 款 SSH / 終端工具,從免費(fèi)開源到企業(yè)級(jí)商用,從輕量化命令行到一站式工具箱,每款都做了介紹與對(duì)比,希望能2026-03-09
在Linux系統(tǒng)下有兩種用戶,即高級(jí)用戶root,普通用戶,高級(jí)用戶root可以在系統(tǒng)中做任何事情,普通用戶僅可在Linux系統(tǒng)中做有限的事情,下面我們就來(lái)看看切換方法2026-02-28
揭秘當(dāng)前登錄用戶的身份! Linux中使用logname命令的技巧
logname命令就是這樣一個(gè)簡(jiǎn)單但強(qiáng)大的工具,它能幫助我們輕松獲取當(dāng)前登錄用戶的用戶名,今天,我們就來(lái)深入探索一下這個(gè)命令的工作原理、使用方法和最佳實(shí)踐2026-02-26
在 Linux 系統(tǒng)中,DNS 緩存是一種將域名和 IP 地址映射關(guān)系緩存在本地的機(jī)制,可以加快域名解析速度,并減輕 DNS 服務(wù)器的負(fù)載2026-02-26



