Python 官方文档:入门教程 => 点击学习
C3-Squid-access.log 拓扑: DNS 10.0.100.71 Haproxy 10.0.100.82 Squid 10.0.100.72/73 Nginx 10.0.100.75/76 NFS
C3-Squid-access.log
拓扑:
- DNS 10.0.100.71
- Haproxy 10.0.100.82
- Squid 10.0.100.72/73
- Nginx 10.0.100.75/76
- NFS 10.0.100.70
-
- DNS
- | (static)
- Haproxy ------> Squid.72/73 (origin server Nginx.75/76)
- |(dynamic)
- Nginx
- |
- NFS
1 以下是3天的 squid access.log,平均每天的access.log 为1.4GB
- du -sh *
1.3G squid.log
1.5G squid.log.0
1.6G squid.log.1
2 排序 access.log
- awk '{print $NF}' squid.log | sort | uniq -c | sort -rn
2459793 tcp_MEM_HIT:NONE
843948 TCP_IMS_HIT:NONE
200753 TCP_MISS:DIRECT
23537 TCP_HIT:NONE
8112 TCP_NEGATIVE_HIT:NONE
2481 TCP_REFRESH_HIT:DIRECT
1838 TCP_REFRESH_MISS:DIRECT
1215 TCP_DENIED:NONE
1 TCP_MISS:NONE
3 access.log 例子
#TCP_MISS:ROUNDROBIN_PARENT
cache01
192.168.4.33 - - [19/Jul/2012:15:29:42 +0800] "GET /file/imgs/upload/202301/31/11xbfcn1o1l.jpg Http/1.1" 200 212299 "htt p://blog.test.com/?p_w_upload_id=88" "Mozilla/5.0 (X11; ubuntu; linux x86_64; rv:14.0) Gecko/20100101 Firefox/14.0.1" TCP_MISS:ROUNDROBIN_PARENT
cache02
- - - [19/Jul/2012:15:29:43 +0800] "ICP_QUERY /file/imgs/upload/202301/31/11xbfcn1o1l.jpg HTTP/0.0" 0 90 "-" "-" UDP_MI SS:NONE
nginx02
10.0.100.72 - - [19/Jul/2012:15:29:47 +0800] "GET /wp-content/uploads/2012/07/DSCN0798-1024x768.jpg HTTP/1.0" 200 211931 "http://blog.test.com/?a ttachment_id=88" "Mozilla/5.0 (X11; Ubuntu; Linux x86_64; rv:14.0) Gecko/20100101 Firefox/14.0.1" 192.168.4.33, 10.0.100.82
#TCP_MISS:SIBLING_HIT
cache01
192.168.4.33 - - [19/Jul/2012:14:25:09 +0800] "GET /file/imgs/upload/202301/31/kfersdqusoj.jpg HTTP/1.1" 304 373 "http://blog.test.com/?p=66" "Mozilla/5.0 (X11; Ubuntu; Linux x86_64; rv:14.0) Gecko/20100101 Firefox/14.0.1" TCP_MISS:SIBLING_HIT
cache02
192.168.4.33,%2010.0.100.82 - - [19/Jul/2012:14:25:10 +0800] "GET /file/imgs/upload/202301/31/kfersdqusoj.jpg HTTP/1.0" 304 291 "http://blog.test.com/?p=66" "Mozilla/5.0 (X11; Ubuntu; Linux x86_64; rv:14.0) Gecko/20100101 Firefox/14.0.1" TCP_IMS_HIT:NONE
#UDP_MISS:NONE
cache01
- - - [20/Jul/2012:09:48:12 +0800] "ICP_QUERY /file/imgs/upload/202301/31/4t1em5j3b35.jpg HTTP/0.0" 0 64 "-" "-" UDP_MISS:NONE
192.168.4.33 - - [20/Jul/2012:09:48:12 +0800] "GET /file/imgs/upload/202301/31/ieisd5lxqw5.jpg HTTP/1.1" 404 406 "http://monitor.test.com/" "Mozilla/5.0 (X11; Ubuntu; Linux x86_64; rv:14.0) Gecko/20100101 Firefox/14.0.1" TCP_MISS:ROUNDROBIN_PARENT
cache02
- - - [20/Jul/2012:09:48:12 +0800] "ICP_QUERY /file/imgs/upload/202301/31/ieisd5lxqw5.jpg HTTP/0.0" 0 68 "-" "-" UDP_MISS:NONE
192.168.4.33 - - [20/Jul/2012:09:48:12 +0800] "GET /file/imgs/upload/202301/31/4t1em5j3b35.jpg HTTP/1.1" 404 406 "http://monitor.test.com/" "Mozilla/5.0 (X11; Ubuntu; Linux x86_64; rv:14.0) Gecko/20100101 Firefox/14.0.1" TCP_MISS:ROUNDROBIN_PARENT
nginx02
10.0.100.72 - - [20/Jul/2012:09:48:16 +0800] "GET /icons/powered_by_rh.png HTTP/1.0" 404 162 "http://monitor.test.com/" "Mozilla/5.0 (X11; Ubuntu; Linux x86_64; rv:14.0) Gecko/20100101 Firefox/14.0.1" 192.168.4.33, 10.0.100.82
#TCP_NEGATIVE_HIT:NONE
cache01
192.168.4.33 - - [20/Jul/2012:14:39:47 +0800] "HEAD /file/imgs/upload/202301/31/4t1em5j3b35.jpg HTTP/1.1" 404 334 "-" "curl/7.22.0 (x86_64-pc-linux-gnu) libcurl/7.22.0 OpenSSL/1.0.1 zlib/1.2.3.4 libidn/1.23 librtmp/2.3" TCP_NEGATIVE_HIT:NONE
192.168.4.33 - - [20/Jul/2012:14:39:48 +0800] "HEAD /file/imgs/upload/202301/31/4t1em5j3b35.jpg HTTP/1.1" 200 342 "-" "curl/7.22.0 (x86_64-pc-linux-gnu) libcurl/7.22.0 OpenSSL/1.0.1 zlib/1.2.3.4 libidn/1.23 librtmp/2.3" TCP_MISS:ROUNDROBIN_PARENT
192.168.4.33 - - [20/Jul/2012:14:39:49 +0800] "HEAD /file/imgs/upload/202301/31/4t1em5j3b35.jpg HTTP/1.1" 200 350 "-" "curl/7.22.0 (x86_64-pc-linux-gnu) libcurl/7.22.0 OpenSSL/1.0.1 zlib/1.2.3.4 libidn/1.23 librtmp/2.3" TCP_MEM_HIT:NONE
apache01
//X-Forwarded-For请求头,多个ip用','分割这里的192.168.4.33 是client ip,10.0.100.82 是haproxy ip。
192.168.4.33, 10.0.100.82 - - [20/Jul/2012:14:39:17 +0800] "HEAD /icons/apache_pb.gif HTTP/1.0" 200 - "-" "curl/7.22.0 (x86_64-pc-linux-gnu) libcurl/7.22.0 OpenSSL/1.0.1 zlib/1.2.3.4 libidn/1.23 librtmp/2.3"
//TCP_NEGATIVE_HIT 参数
设置缓存错误页面时间 negative_ttl
negative_ttl 5 minutes
4 access 编码解释
4.1 access.log 结果编码
- 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 查询。
- 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 响应到客户端。
4.2 access.log 对端编码
- NONE //这指明 Squid 对本次请求,不会与任何其他服务器(邻居或原始服务器)通信。
- //它通常与 cache命中、拒绝请求、cache 管理请求、错误、和所有的 ICP 查询这些类型联合出现。
- DIRECT //Squid 直接转发请求到原始服务器。该域的第 2 半部分显示原始服务器的 IP 地址,或主机名。
- SIBLING_HIT //在姐妹 cache 返回 ICP 或 HTCP 命中后,Squid 发送请求到姐妹 cache。
- PARENT_HIT //在父 cache 返回 ICP 或 HTCP 命中后,Squid 发送请求到父 cache。
- DEFAULT_PARENT //Squid 选择该父 cache,因为其在 squid.conf 的 cache_peer 行里被标志为 default。
- FIRST_UP_PARENT //Squid 转发请求到该父 cache,因为它是位于已知活跃列表里的第一个父 cache。
- FIRST_PARENT_MISS //Squid 转发请求到该父 cache,它第一个响应 ICP/HTCP 丢失消息。换句话说,对这个特殊的
- //ICP/HTCP 查询,在这个特殊时刻,被选中的父 cache 有最佳的往返时间(RTT)。
- //注意标准RTT 可能被人工矫正过,取决于 cache_peer 指令的 weight 选项。
- CLOSEST_PARENT_MISS
- //Squid 选择该父 cache,因为它报告到原始服务器的 RTT 最低。这点仅在 2 个 cache 都激活
- //了 netdb,并且原始服务器(或在同一子网内的其他 server)返回 ICMP ping 消息。
- CLOSEST_PARENT //这点类似 CLOSEST_PARENT_MISS,除了 RTT 计算不是来自 ICP/HTCP 响应消息外。
- //代替的,它们来自 Squid 保留的更老的计算方式,例如 netdb 交换功能。
- CLOSEST_DIRECT //Squid 基于 netdb 算法,转发请求到原始服务器。这点在满足下述任何条件时发生:
- //1)在 Squid 和原始服务器之间的 RTT 小于配置的 minimum_direct_rtt 值。
- //2)在 Squid 和原始服务器之间的标准路由跳数少于配置的 minimum_direct_hops 值。
- //3)在 ICP/HTCP 响应里返回的 RTT 值,指示 Squid 离原始服务器近于任何其他邻居。
- ROUNDROBIN_PARENT
- //Squid 转发请求到该父 cache,因为设置了 round-robin 选项,并且它有最低的使用计数器。
- CD_PARENT_HIT //Squid 基于 cache 摘要算法(见 10.7 节)转发请求到该父 cache。
- CD_SIBLING_HIT //Squid 基于 cache 摘要算法转发请求到该姐妹 cache。
- CARPS //quid 选择该父 cache,基于 cache 数组路由协议算法(见 10.9 节)
- ANY_PARENT //作为最后的手段,Squid 选择该父 cache,因为没有其他方法能选择可行的下一跳。
- //注意大部分上述编码可能以 TIMEOUT_开头,这表明在等待 ICP/HTCP 响应时发生超时。
- 例如:
- 1066038165.382 345 193.233.46.21 TCP_MISS/200 2836 GET /file/imgs/upload/202301/31/qgxjlkeofkt.jpg \
- TIMEOUT_CLOSEST_DIRECT/213.219.122.19 p_w_picpath/jpeg
- 可使用 icp_query_timeout 指令来调整超时。
参考
Squid 中文权威指南
http://home.arcor.de/pangj/squid/
squid 否定缓存 negative_ttl 实测和总结
http://www.sealinger.com/arcHives/383/
C1-Squid_Cache-Server
http://dnGood.blog.51cto.com/446195/939524
C2-Squid_Neighbour
http://dngood.blog.51cto.com/446195/955710
结束
更多请:
linux 相关 37275208
vmware 虚拟化相关 166682360
--结束END--
本文标题: C3-Squid-access.log
本文链接: https://lsjlt.com/news/189848.html(转载时请注明来源链接)
有问题或投稿请发送至: 邮箱/279061341@qq.com QQ/279061341
2024-03-01
2024-03-01
2024-03-01
2024-02-29
2024-02-29
2024-02-29
2024-02-29
2024-02-29
2024-02-29
2024-02-29
回答
回答
回答
回答
回答
回答
回答
回答
回答
回答
0