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 7

## 这是 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.1  /var/log/squid/access.log.3  /var/log/squid/access.log.5
/var/log/squid/access.log.0  /var/log/squid/access.log.2  /var/log/squid/access.log.4  /var/log/squid/access.log.6
shell > ls /var/log/squid/cache.log*
/var/log/squid/cache.log    /var/log/squid/cache.log.1  /var/log/squid/cache.log.3  /var/log/squid/cache.log.5
/var/log/squid/cache.log.0  /var/log/squid/cache.log.2  /var/log/squid/cache.log.4  /var/log/squid/cache.log.6
shell > ls /var/log/squid/store.log*
/var/log/squid/store.log    /var/log/squid/store.log.1  /var/log/squid/store.log.3  /var/log/squid/store.log.5
/var/log/squid/store.log.0  /var/log/squid/store.log.2  /var/log/squid/store.log.4  /var/log/squid/store.log.6

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

二、日志分析

/var/log/squid/access.log

## 时间戳          默认以 UTC 1970-01-01 00:00:00 到现在的秒数表示,显示为毫秒
   响应时间        处理所用时间,毫秒
   客户端地址      客户端 IP 地址
   结果码/状态码   结果码表示 Squid 专有的编码,如 TCP_HIT 、UDP_DENIED 等,状态码是 HTTP 的响应代码,如 200、301、404、503 等
   传输 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

## 请求资源可能是旧的缓存,发送确认请求到原始服务器,原始服务器返回 304 未修改响应,指示 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 80 mgr:info

HTTP/1.0 200 OK
Server: squid/3.1.10
Mime-Version: 1.0
Date: Wed, 07 Jan 2015 08:09:10 GMT
Content-Type: text/plain
Expires: Wed, 07 Jan 2015 08:09:10 GMT
Last-Modified: Wed, 07 Jan 2015 08:09:10 GMT
X-Cache: MISS from study.localhost.localdomain
X-Cache-Lookup: MISS from study.localhost.localdomain:80
Via: 1.0 study.localhost.localdomain (squid/3.1.10)
Connection: close

Squid Object Cache: Version 3.1.10
Start Time:     Wed, 07 Jan 2015 07:03:04 GMT
Current Time:   Wed, 07 Jan 2015 08:09:10 GMT
Connection information for squid:
        Number of clients accessing cache:      2
        Number of HTTP requests received:       741
        Number of ICP messages received:        0
        Number of ICP messages sent:    0
        Number of queued ICP replies:   0
        Number of HTCP messages received:       0
        Number of HTCP messages sent:   0
        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: 36984 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:      31228 KB                                      ## 缓存目录大小
        Storage Swap capacity:   0.7% used, 99.3% free
        Storage Mem size:       108 KB                                        ## 缓存内存大小
        Storage Mem capacity:    0.0% used, 100.0% free
        Mean Object Size:       255.97 KB
        Requests given to unlinkd:      0
Median Service Times (seconds)  5 min    60 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, 5 minute avg:        0.02%
        CPU Usage, 60 minute avg:       0.12%
        Process Data Segment Size via sbrk(): 3692 KB
        Maximum Resident Size: 79968 KB
        Page faults with physical i/o: 1
Memory accounted for:
        Total accounted:          474 KB   1%
        memPool accounted:        474 KB   1%
        memPool unaccounted:    38133 KB  99%
        memPoolAlloc calls:    225264
        memPoolFree calls:     228120
File descriptor usage for squid:
        Maximum number of file descriptors:   65535
        Largest file desc currently in use:     17
        Number of file desc currently in use:   10
        Files queued for open:                   0
        Available number of file descriptors: 65525
        Reserved number of file descriptors:   100
        Store Disk files open:                   0
Internal Data Structures:
           149 StoreEntries
            27 StoreEntries with MemObjects
            26 Hot Object Cache Items
           122 on-disk objects
时间: 2024-10-06 11:51:17

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

Squid代理服务器+ACL访问控制+Squid日志分析&&任务计划

第一章:Squid代理服务器 防伪码:只有顽强,明日路纵会更彷徨! 理论概述: 1.缓存代理概述:squid主要提供缓存加速,应用层过滤控制的功能. 2.代理的基本类型 1)传统代理:普通的代理服务器,首先必须在客户机的浏览器.qq聊天工具.下载软件等程序中手动设置代理服务器的地址和端口,然后才能使用代理来访问网络. 2)透明代理:提供与传统代理相同的功能和服务,其区别在于客户机不需要指定代理服务器的地址和端口,而是通过默认路由.防火墙策略将Web访问重定向,实际仍然交给代理服务器来处理.  实

CentOS 7安装squid代理服务器

Squid,一个高性能的代理缓存服务器,支持FTP.gopher.HTTP协议. Squid,一个缓存Internet 数据的软件,其接收用户的下载申请(作为代理服务器),并自动处理所下载的数据,并返回给客户. 当一个用户想要下载一个主页(如米扑科技:https://mimvp.com)时,可以向Squid 发出一个申请,让Squid 代替其进行下载,然后Squid 连接所申请网站并请求该主页,接着把该主页传给用户同时保留一个备份,当别的用户申请同样的页面时,Squid 把保存的备份立即传给用户

Squid代理服务器综合应用案例

squid代理服务器 squid是一种用来缓存Internet数据的软件.接受来自客户机需要下载的目标的请求并适当的处理这些请求.也就是说,如果一个客户端想要打开默认网站,它请求squid为它取得这个页面.squid随之连接到远程服务器并向这个页面发出请求.然后,squid显式地聚集数据到客户端机器,而且同时复制一份.当下一次有人需要同一页面时,squid可以简单的从磁盘中读到它,那样数据会立即传输到客户机上. squid代理的作用 - 通过缓存方式为用户提供Web加速访问 - 对用户的Web访

构建Squid代理服务器-传统代理、透明代理、反向代理

Squid是Linux系统中最常用的一款开源代理服务软件,主要提供缓存加速和应用层过滤控制的功能,可以很好的实现HTTP.FTP.DNS查询以及SSL等应用的缓存代理. 正向代理:根据实现的方式不同,代理服务可分为传统代理和透明代理. 传统代理:普通的代理服务,多见于Internet环境,必须在客户机的浏览器.QQ聊天工具.下载软件等程序中手动设置代理服务器对的地址和端口,才能使用代理服务器来访问网络.对于网页浏览器,访问网站时的域名解析请求会发送给指定的代理服务器. 透明代理:提供与传统代理相

Squid代理服务器应用(传统与透明)

实验原理图 第一步:配置squid代理服务器 #远程共享并挂载源码包 [[email protected] ~]# smbclient -L //192.168.142.1 [[email protected] ~]# mount.cifs //192.168.142.1/squid /mnt #解压源码包 [[email protected] ~]# cd /mnt [[email protected] mnt]# tar zxvf squid-3.4.6.tar.gz -C /opt #安装

Squid代理服务器——传统代理,透明代理(实践!)

缓存代理概述 web代理的工作机制: 缓存网页对象,减少重复请求 代理的基本类型 传统代理:适用于Internet,需明确指定服务端 透明代理:客户机不需要指定代理服务器的地址和端口,是通过默认路由,防火墙将web重定向给代理 使用代理的好处 提高web访问速度 隐藏客户机的真实IP地址 一,传统代理 实验环境 squid服务器 192.168.13.179 web服务器 192.168.13.151 client测试机192.168.13.135 1,在squid服务器上安装squid代理服务

squid代理服务器-传统代理,透明代理

缓存代理概述 web代理的工作机制: 缓存网页对象,减少重复请求 代理的基本类型 传统代理:适用于Internet,需明确指定服务端 透明代理:客户机不需要指定代理服务器的地址和端口,是通过默认路由,防火墙将web重定向给代理 使用代理的好处 提高web访问速度 隐藏客户机的真实IP地址 一,传统代理 实验环境 squid服务器 192.168.13.179 web服务器 192.168.13.151 client测试机192.168.13.135 1,在squid服务器上安装squid代理服务

Squid代理服务器应用

第一步:配置squid代理服务器 #远程共享并挂载源码包 [[email protected] ~]# smbclient -L //192.168.142.1 [[email protected] ~]# mount.cifs //192.168.142.1/squid /mnt #解压源码包 [[email protected] ~]# cd /mnt [[email protected] mnt]# tar zxvf squid-3.4.6.tar.gz -C /opt #安装编译环境 [

Squid代理服务器--实战篇

一.传统代理 使用传统代理的特点在于,客户机的相关程序(如IE浏览器.QQ聊天工具)必须指定代理服务器的地址.端口等信息.下面通过一个简单的应用案例来学习传统代理的配置和使用 基于Internet网络环境,案例的主要需求描述如下: 在Linux主机B上,构建Squid为客户机访问各种网站提供代理服务,但禁止通过代理下载超过10MB大小的文件 在客户机C上,指定主机B作为Web访问代理,以隐藏自己的真实IP地址 针对上述实验环境,主机B作为代理服务器必须正确构建Squid服务,并允许客户机使用代理