简介:

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. 每天一个linux命令(磁盘):【转载】du 命令

    Linux du命令也是查看使用空间的,但是与df命令不同的是Linux du命令是对文件和目录磁盘使用的空间的查看,还是和df命令有一些区别的. 1.命令格式: du [选项][文件] 2.命令功能 ...

  2. java并发--CountDownLatch、CyclicBarrier和Semaphore

    在java 1.5中,提供了一些非常有用的辅助类来帮助我们进行并发编程,比如CountDownLatch,CyclicBarrier和Semaphore,今天我们就来学习一下这三个辅助类的用法. 以下 ...

  3. Vim-Go环境搭建

    Vim-Go环境搭建 https://www.cnblogs.com/qcloud1001/p/10072325.html https://www.cnblogs.com/chris-cp/p/584 ...

  4. 为iPhone 6设计自适应布局(iOS8)

    Apple从iOS 6加入了Auto Layout后开始就比较委婉的开始鼓励.建议开发者使用自适应布局,但是到目前为止,我感觉大多数开发者一直在回避这个问题,不管是不是由于历史原因造成的,至少他们在心 ...

  5. [Scala函数特性系列]——按名称传递参数

    通常情况下,函数的参数是传值参数:即参数的值在它被传递给函数之前被确定.但是,如果我们需要编写一个接收参数不希望马上计算,直到调用函数内的表达式才进行真正的计算的函数.对于这种情况,Scala提供按名 ...

  6. 《DSP using MATLAB》示例Example 8.10

    这个例子的代码我不会写,只是放一张书的截图图片在这里.以后再改进吧.

  7. [LeetCode系列]括号生成问题

    给定n, 返回所有匹配的n对括号的可能形式. 如 给定 n = 3, 一个解集是: "((()))", "(()())", "(())()" ...

  8. Ubuntu下手动安装Nvidia显卡驱动

    1. 下载最新版的nVidia驱动. http://www.nvidia.com/page/drivers.html 2.编辑blacklist.conf. sudo gedit /etc/modpr ...

  9. mysql索引相关理解

    1.索引是高效获取数据的数据结构, 2.唯一索引,索引值不重复unique create unique index 索引名 on 表名(字段) alter table 表名 add unique in ...

  10. snmp 介绍和Ubuntu安装使用

    一.介绍 1. 服务器监控工具可以帮助我们从任何一个地方实时了解服务器的性能和功能.监控宝服务器监控套装,可以实时CPU使用率.内存使用率.平均负载.磁盘I/O.网络流量.磁盘使用率等,能够同时为你带 ...