常見設定方法
vim /etc/squid/squid.conf logformat squid_custom_log %ts%03tu %>a %la %tr “%{Referer}>h” %rm “%ru” %Ss %>Hs %h” access_log daemon:/var/logs/squid/access.log squid_custom_log
參數說明:
%ts 時間戳:請求完成時間,以Unix時間來記錄的 %tu 毫秒級(milliseconds) %tl 本地時間Local time. Optional strftime format argument default %d/%b/%Y:%H:%M:% S %z %>a 客戶端地址:該域包含客戶端的IP地址,或者是主機名. %la 服務端(本機)IP Local IP address (http_port) %tr 響應時間:對HTTP響應來說,該域表明squid花了多少時間來處理請求。時間是毫秒級的(milliseconds) %{Referer}>h 用戶來源 %rm 請求方式:該域包含請求方式. %ru URI:該域包含來自客戶端請求的URI。 %>Hs(squid 2.7為%Hs) HTTP響應狀態碼(例如200,304,404等) %h 用戶代理,簡稱 UA,它是一個特殊字符串頭,使得服務器能夠識別客戶使用的操作系統及版本、CPU 類型、瀏覽器及版本、瀏覽器渲染引擎、瀏覽器語言、瀏覽器插件等
%Ss 說明
TCP_HIT Squid發現請求資源的貌似新鮮的拷貝,並將其立即發送到客戶端. TCP_MISS Squid沒有請求資源的cache拷貝. TCP_REFERSH_HIT Squid發現請求資源的貌似陳舊的拷貝,並發送確認請求到原始服務器.原始服務器返回304(未修改)響應,指示squid的拷貝仍舊是新鮮的. TCP_REF_FAIL_HIT Squid發現請求資源的貌似陳舊的拷貝,並發送確認請求到原始服務器.然而,原始服務器響應失敗,或者返回的響應Squid不能理解.在此情形下,squid發送現有cache拷貝(很可能是陳舊的)到客戶端. TCP_REFRESH_MISS Squid發現請求資源的貌似陳舊的拷貝,並發送確認請求到原始服務器.原始服務器響應新的內容,指示這個cache拷貝確實是陳舊的. TCP_CLIENT_REFRESH_MISS Squid發現了請求資源的拷貝,但客戶端的請求包含了Cache-Control: no-cache指令.Squid轉發客戶端的請求到原始服務器,強迫cache確認. TCP_IMS_HIT 客戶端發送確認請求,Squid發現更近來的、貌似新鮮的請求資源的拷貝.Squid發送更新的內容到客戶端,而不聯繫原始服務器. TCP_SWAPFAIL_MISS Squid發現請求資源的有效拷貝,但從磁盤裝載它失敗.這時squid發送請求到原始服務器,就如同這是個cache丟失一樣. TCP_NEGATIVE_HIT 在對原始服務器的請求導致HTTP錯誤時,Squid也會cache這個響應.在短時間內對這些資源的重複請求,導致了否命中. negative_ttl指令控制這些錯誤被cache的時間數量.請注意這些錯誤只在內存cache,不會寫往磁盤.下列HTTP狀態碼可能導致否定cache(也遵循於其他約束): 204, 305, 400, 403, 404, 405, 414, 500, 501, 502, 503, 504 . TCP_MEM_HIT Squid在內存cache裡發現請求資源的有效拷貝,並將其立即發送到客戶端.注意這點並非精確的呈現了所有從內存服務的響應.例如,某些cache在內存裡,但要求確認的響應,會以TCP_REFRESH_HIT, TCP_REFRESH_MISS等形式記錄. TCP_DENIED 因為http_access或http_reply_access規則,客戶端的請求被拒絕了.注意被http_access拒絕的請求在第9域的值是NONE/-,然而被http_reply_access拒絕的請求,在相應地方有一個有效值. TCP_OFFLINE_HIT 當offline_mode激活時,Squid對任何cache響應返回cache命中,而不用考慮它的新鮮程度. TCP_REDIRECT 重定向程序告訴Squid產生一個HTTP重定向到新的URI(見11.1節).正常的,Squid不會記錄這些重定向.假如要這樣做,必須在編譯squid前,手工定義LOG_TCP_REDIRECTS預處理指令. NONE 無分類的結果用於特定錯誤,例如無效主機名. 相應於ICP查詢,下列標籤可能出現在access.log文件的第四域. UDP_HIT Squid在cache裡發現請求資源的貌似新鮮的拷貝. UDP_MISS Squid沒有在cache裡發現請求資源的貌似新鮮的拷貝.假如同一目標通過HTTP請求,就可能是個cache丟失.請對比UDP_MISS_NOFETCH. UDP_MISS_NOFETCH 跟UDP_MISS類似,不同的是這裡也指示了Squid不願去處理相應的HTTP請求.假如使用了-Y命令行選項,Squid在啟動並編譯其內存索引時,會返回這個標籤而不是UDP_MISS. UDP_DENIED 因為icp_access規則,ICP查詢被拒絕.假如超過95%的到某客戶端的ICP響應是UDP_DENIED,並且客戶端數據庫激活了(見附錄A),Squid在1小時內,停止發送任何ICP響應到該客戶端.若這點發生,你也可在cache.log裡見到一個警告. UDP_INVALID Squid接受到無效查詢(例如截斷的消息、無效協議版本、URI裡的空格等).Squid發送UDP_INVALID響應到客戶端.
(Visited 294 times, 1 visits today)