简介:

Squid 服务器日志增长是很快的,如果不做处理的话,可以会由于系统限制单文件大小,而导致 Squid 服务停止,太大的日志文件也不适合分析。

一、日志配置

shell > grep 'log' /etc/squid/squid.conf

cache_access_log /var/log/squid/access.log
cache_log /var/log/squid/cache.log
cache_store_log /var/log/squid/store.log
logfile_rotate

## 这是 squid.conf 中关于 log 的配置项,分别定义了三个日志文件 access.log cache.log store.log
## logfile_rotate 7 代表保留 6 个历史日志文件,跟 1 个当前日志文件

## 默认 Squid 是不作日志切割的,系统允许写多大,那么日志文件就写多大

shell > squid -k rotate

## 使用 squid -k rotate 来切割日志,切割的日志名按 .0 .1 .2 .3 .... 保存

shell > ls /var/log/squid/*.log*
/var/log/squid/access.log /var/log/squid/cache.log /var/log/squid/store.log
/var/log/squid/access.log.0 /var/log/squid/cache.log.0 /var/log/squid/store.log.0 shell > crontab -e
0 3 * * * /usr/sbin/squid -k rotate

## 使用任务计划来定期切割日志

shell > ls /var/log/squid/access.log*
/var/log/squid/access.log /var/log/squid/access.log. /var/log/squid/access.log. /var/log/squid/access.log.
/var/log/squid/access.log. /var/log/squid/access.log. /var/log/squid/access.log. /var/log/squid/access.log.

shell > ls /var/log/squid/cache.log*
/var/log/squid/cache.log /var/log/squid/cache.log. /var/log/squid/cache.log. /var/log/squid/cache.log.
/var/log/squid/cache.log. /var/log/squid/cache.log. /var/log/squid/cache.log. /var/log/squid/cache.log.

shell > ls /var/log/squid/store.log*
/var/log/squid/store.log /var/log/squid/store.log. /var/log/squid/store.log. /var/log/squid/store.log.
/var/log/squid/store.log. /var/log/squid/store.log. /var/log/squid/store.log. /var/log/squid/store.log.

## 由于参数 logfile_rotate 7 的限定,每个日志文件最多保存 7 个( 自动删除 )

二、日志分析

/var/log/squid/access.log

## 时间戳          默认以 UTC -- :: 到现在的秒数表示,显示为毫秒
响应时间 处理所用时间,毫秒
客户端地址 客户端 IP 地址
结果码/状态码 结果码表示 Squid 专有的编码,如 TCP_HIT 、UDP_DENIED 等,状态码是 HTTP 的响应代码,如 、、、 等
传输 Size 给客户端传输字节数
请求方式 HTTP 或 ICP 两种,HTTP 一般为 GET ,ICP 一般为 ICP_QUERY
URL 请求的 URL 地址
客户端身份
对端编码/对端主机
内容类型 HTTP 响应的内容类型
HTTP 请求头部
HTTP 响应头部 ## access.log 结果码( 部分常见的,更多请常找相关资料 ) TCP_HIT ## 在硬盘中发现有效请求资源并立即回传给用户的数据 TCP_MISS ## 没有被缓存,并回传给用户的数据 TCP_MEM_HIT ## 在内存中发现有效的请求资源并立即回传给用户的数据 TCP_REFRESH_UNMODIFIED ## 请求资源可能是旧的缓存,发送确认请求到原始服务器,原始服务器返回 未修改响应,指示 Squid 的缓存是最新的。并回传给用户的数据 TCP_REFRESH_MODIFIED ## 请求资源可能是旧的缓存,发送确认请求到原始服务器,原始服务器返回新的数据,指示这个缓存是旧的,缓存并回传给用户的数据 shell > cat /var/log/squid/access.log | grep TCP_HIT ## 被缓存到硬盘并回传给用户的数据 shell > cat /var/log/squid/access.log | grep TCP_MEM_HIT ## 被缓存到内存并回传给用户的数据 shell > cat /var/log/squid/access.log | grep TCP_MISS ## 没有被缓存的数据,而是从原始服务器获取并回传给用户的数据

三、缓存命中率

shell > squidclient -h 192.168.1.88 -p  mgr:info

HTTP/1.0  OK
Server: squid/3.1.
Mime-Version: 1.0
Date: Wed, Jan :: GMT
Content-Type: text/plain
Expires: Wed, Jan :: GMT
Last-Modified: Wed, Jan :: GMT
X-Cache: MISS from study.localhost.localdomain
X-Cache-Lookup: MISS from study.localhost.localdomain:
Via: 1.0 study.localhost.localdomain (squid/3.1.)
Connection: close Squid Object Cache: Version 3.1.
Start Time: Wed, Jan :: GMT
Current Time: Wed, Jan :: GMT
Connection information for squid:
Number of clients accessing cache:
Number of HTTP requests received:
Number of ICP messages received:
Number of ICP messages sent:
Number of queued ICP replies:
Number of HTCP messages received:
Number of HTCP messages sent:
Request failure ratio: 0.00
Average HTTP requests per minute since start: 11.2
Average ICP messages per minute since start: 0.0
Select loop called: times, 107.235 ms avg
Cache information for squid:
Hits as % of all requests: 5min: 0.0%, 60min: 86.0% ## 请求命中率 5分内平均 0.0% ,60分内平均 86.0%
Hits as % of bytes sent: 5min: 100.0%, 60min: 99.1% ## 字节命中率
Memory hits as % of hit requests: 5min: 0.0%, 60min: 0.0% ## 内存命中率
Disk hits as % of hit requests: 5min: 0.0%, 60min: 13.5% ## 磁盘命中率
Storage Swap size: KB ## 缓存目录大小
Storage Swap capacity: 0.7% used, 99.3% free
Storage Mem size: KB ## 缓存内存大小
Storage Mem capacity: 0.0% used, 100.0% free
Mean Object Size: 255.97 KB
Requests given to unlinkd:
Median Service Times (seconds) min min:
HTTP Requests (All): 0.00000 0.00463
Cache Misses: 0.00000 0.04277
Cache Hits: 0.00000 0.08265
Near Hits: 0.00000 0.00286
Not-Modified Replies: 0.00000 0.00000
DNS Lookups: 0.00000 0.00000
ICP Queries: 0.00000 0.00000
Resource usage for squid:
UP Time: 3965.980 seconds
CPU Time: 4.601 seconds
CPU Usage: 0.12%
CPU Usage, minute avg: 0.02%
CPU Usage, minute avg: 0.12%
Process Data Segment Size via sbrk(): KB
Maximum Resident Size: KB
Page faults with physical i/o:
Memory accounted for:
Total accounted: KB %
memPool accounted: KB %
memPool unaccounted: KB %
memPoolAlloc calls:
memPoolFree calls:
File descriptor usage for squid:
Maximum number of file descriptors:
Largest file desc currently in use:
Number of file desc currently in use:
Files queued for open:
Available number of file descriptors:
Reserved number of file descriptors:
Store Disk files open:
Internal Data Structures:
StoreEntries
StoreEntries with MemObjects
Hot Object Cache Items
on-disk objects

Squid 代理服务器日志管理的更多相关文章

  1. CentOS 7 Squid代理服务器正向代理-透明代理

    Squid是Linux系统中最常用的一款开源代理服务软件,主要提供缓存加速和应用层过滤控制的功能,可以很好的实现HTTP.FTP.DNS查询以及SSL等应用的缓存代理 透明代理:提供与传统代理相同的功 ...

  2. Squid代理服务器

    缓存代理概述:做为应用层的代理服务软件,squid主要提供缓存加速,应用层过滤控制的功能. 1.代理的工作机制 当客户机通过代理来请求web页面时,指定的代理服务器会先检查自己的缓存,如果缓存中已经有 ...

  3. Squid服务日志分析

    Squid服务日志分析 Apache 和 Squid 是两种著名的代理缓存软件,但Squid 较 Apache 而言是专门的代理缓存服务器软件,其代理缓存的功能强大,支持 HTTP/1.1 协议,其缓 ...

  4. CentOS 6.4下Squid代理服务器的安装与配置,反向代理

    CentOS 6.4下Squid代理服务器的安装与配置 一.简介 代理服务器英文全称是Proxy Server,其功能就是代理网络用户去取得网络信息. Squid是一个缓存Internet 数据的软件 ...

  5. CentOS 7安装squid代理服务器

    Squid,一个高性能的代理缓存服务器,支持FTP.gopher.HTTP协议. Squid,一个缓存Internet 数据的软件,其接收用户的下载申请(作为代理服务器),并自动处理所下载的数据,并返 ...

  6. 19、Squid代理服务器

    第十九章,配置Squid服务器 一.代理服务器简介 19.1.1:什么是代理服务器 代理服务器的功能就是代理网络用户去取的网络信息,好比是网络信息的中转站,大多被用来连接互联网和局域网.代理服务器好像 ...

  7. 构建squid代理服务器

    基本概念 本文使用squid代理服务 软件介绍:百度百科 作为应用层的代理服务软件,Squid主要提供缓存加速.应用层过滤控制的功能: 工作机制:缓存网页对象,减少重复请求(HTTP代理的缓存加速对象 ...

  8. squid 代理服务器应用

    squid 代理服务器应用 1.Squid 代理服务器 : Squid 主要提供缓存加速.应用层过滤控制的功能.  代理的工作机制: 代替客户机向网站请求数据,从而可以隐藏用户的真实IP地址. 将获得 ...

  9. Squid代理服务器应用

    Squid代理服务器应用 目录 Squid代理服务器应用 一.Squid的脚本概念 1. Squid的作用 2. Web代理的工作机制 3. 代理服务器的概念 4. 代理服务器的作用 5. 代理的基本 ...

随机推荐

  1. ssh/scp免密码登录传输

    # 本地服务器生成key(直接回车默认) ssh-keygen # 将key传输到要登录的服务器 ssh-copy-id -i /root/.ssh/id_rsa.pub root@IP地址 # 输入 ...

  2. (2/2) 为了理解 UWP 的启动流程,我从零开始创建了一个 UWP 程序

    每次使用 Visual Studio 的模板创建一个 UWP 程序,我们会在项目中发现大量的项目文件.配置.应用启动流程代码和界面代码.然而这些文件在 UWP 程序中到底是如何工作起来的? 我从零开始 ...

  3. WPF 绘制对齐像素的清晰显示的线条

    此前有小伙伴询问我为何他 1 像素的线条显示发虚,然后我告诉他是“像素对齐”的问题,然而他设置了各种对齐像素的属性依旧没有作用.于是我对此进行了一系列试验,对 WPF 像素对齐的各种方法进行了一次总结 ...

  4. 《DSP using MATLAB》示例Example7.24

    代码: ws1 = 0.2*pi; wp1 = 0.35*pi; wp2 = 0.65*pi; ws2 = 0.8*pi; Rp = 1.0; As = 60; [delta1, delta2] = ...

  5. Appium + Python App自动化(2)第一个脚本

    [1]打开你的夜神模拟器(或者连接你的手机) [2]打开桌面的Appium [3]下载你要测的App的apk文件,放到桌面 [4]拖动你的apk安装包到夜神模拟器里,然后模拟器会提示你安装.安装.原来 ...

  6. LeetCode 760. Find Anagram Mappings

    原题链接在这里:https://leetcode.com/problems/find-anagram-mappings/description/ 题目: Given two lists Aand B, ...

  7. 【java基础】java中Object对象中的Hashcode方法的作用

    以下是关于HashCode的官方文档定义: hashcode方法返回该对象的哈希码值.支持该方法是为哈希表提供一些优点,例如,java.util.Hashtable 提供的哈希表. hashCode  ...

  8. Kubernetes基本概念

    Kubernete模型中的核心概念.这些核心概念反映了Kubernetes设计过程中对应用容器集群的认知模型. 集群组件,从架构上看,Kubernetes集群(Cluster)也采用了典型的“主-从” ...

  9. JFreeChart API 说明(转)

    原地址 http://blog.csdn.net/mike_caoyong/article/details/7338160 JFreeChart目前是最好的java图形解决方案,基本能够解决目前的图形 ...

  10. 云服务器 ECS Linux 软件源自动更新工具

    https://help.aliyun.com/knowledge_detail/41177.html#%E5%B7%A5%E5%85%B7%EF%BC%9Aupdate_source.sh 功能说明 ...