Squid 代理服务器日志管理
简介:
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 代理服务器日志管理的更多相关文章
- CentOS 7 Squid代理服务器正向代理-透明代理
Squid是Linux系统中最常用的一款开源代理服务软件,主要提供缓存加速和应用层过滤控制的功能,可以很好的实现HTTP.FTP.DNS查询以及SSL等应用的缓存代理 透明代理:提供与传统代理相同的功 ...
- Squid代理服务器
缓存代理概述:做为应用层的代理服务软件,squid主要提供缓存加速,应用层过滤控制的功能. 1.代理的工作机制 当客户机通过代理来请求web页面时,指定的代理服务器会先检查自己的缓存,如果缓存中已经有 ...
- Squid服务日志分析
Squid服务日志分析 Apache 和 Squid 是两种著名的代理缓存软件,但Squid 较 Apache 而言是专门的代理缓存服务器软件,其代理缓存的功能强大,支持 HTTP/1.1 协议,其缓 ...
- CentOS 6.4下Squid代理服务器的安装与配置,反向代理
CentOS 6.4下Squid代理服务器的安装与配置 一.简介 代理服务器英文全称是Proxy Server,其功能就是代理网络用户去取得网络信息. Squid是一个缓存Internet 数据的软件 ...
- CentOS 7安装squid代理服务器
Squid,一个高性能的代理缓存服务器,支持FTP.gopher.HTTP协议. Squid,一个缓存Internet 数据的软件,其接收用户的下载申请(作为代理服务器),并自动处理所下载的数据,并返 ...
- 19、Squid代理服务器
第十九章,配置Squid服务器 一.代理服务器简介 19.1.1:什么是代理服务器 代理服务器的功能就是代理网络用户去取的网络信息,好比是网络信息的中转站,大多被用来连接互联网和局域网.代理服务器好像 ...
- 构建squid代理服务器
基本概念 本文使用squid代理服务 软件介绍:百度百科 作为应用层的代理服务软件,Squid主要提供缓存加速.应用层过滤控制的功能: 工作机制:缓存网页对象,减少重复请求(HTTP代理的缓存加速对象 ...
- squid 代理服务器应用
squid 代理服务器应用 1.Squid 代理服务器 : Squid 主要提供缓存加速.应用层过滤控制的功能. 代理的工作机制: 代替客户机向网站请求数据,从而可以隐藏用户的真实IP地址. 将获得 ...
- Squid代理服务器应用
Squid代理服务器应用 目录 Squid代理服务器应用 一.Squid的脚本概念 1. Squid的作用 2. Web代理的工作机制 3. 代理服务器的概念 4. 代理服务器的作用 5. 代理的基本 ...
随机推荐
- linux发行版本centos7.4上安装jdk,tomcat,mariadb良心教程
准备工作: 本地安装:rpm -ivh 程序名 因为jdk,tomcat,mysql的安装过程需要从网上下载部分支持包才可以继续,所以要求提前安装下载好依赖. yum install glibc.i6 ...
- SmartSql 动态仓储
动态代理仓储 SmartSql源码:https://github.com/Ahoo-Wang/SmartSql 简介 动态代理仓储(SmartSql.DyRepository)组件是SmartSql非 ...
- nginx unit 安装试用
1. yum 源 nano /etc/yum.repos.d/unit.repo 内容 [unit] name=unit repo baseurl=https://packages.nginx.org ...
- jest js 测试框架-简单方便人性化
1. 安装 yarn global add jest-cli or npm install -g jest-cli 备注:可以安装为依赖不用全局安装 2. 项目代码 a. 项目初始化 yarn ini ...
- CDN初学搭建(ats)
CDN初学搭建(ats) ats trafficserver squid 一. CDN初学搭建 准备vagrant virtualbox 内部环境测试所需包 一.vagrant创建启动虚拟机 1 mk ...
- 如何定位占用cpu过高的线程
如何定位占用cpu过高的线程 近来发现平台应用响应越来越慢,通过top命令发现,cpu占用率越来越高 1. 首先根据top命令,发现占用cpu最高的进程PID:3075. 通过ps aux | gre ...
- Zookeeper的shell操作
一.客户端连接服务器 zkCli.sh start 二.命令操作 进入到客户端操作行,键入help 查看zookeeper命令列表 常用命令 1) 查看节点列表:ls 路径 2) 创建节点:creat ...
- git 清除本地无效的分支
远程服务器的分支已经删掉了,但是本地分支还存在 $ git fetch -p 如果不行,使用下面的指令 $ git remote prune origin
- Windows 键盘快捷键概述
在 Windows 中工作时,利用快捷键代替鼠标.可以利用键盘快捷键打开.关闭和导航“开始”菜单.桌面.菜单.对话框以及网页.键盘还可以让您更简单地与计算机交互. 单击一个标题或按 TAB 键可以突 ...
- 使用FILE指针读写文件
http://www.cnblogs.com/Solstice/archive/2011/07/17/2108715.html 看了这篇博客有感而发. 就个人而言我是典型的从C到C++的类型,并且逐渐 ...