分析Apache日志文件,统计各种实用信息

Apache访问日志记录了Apache处理的所有的请求。访问日志存储目录由CustomLog指定。下面我们来分析日志并得出有用的统计。

我的Apache日志存储目录 /var/log/apache2

Screen Shot 2015-11-16 at 5.45.35 PM

access.log 文件几本结构示例

分析apache日志分析文件

原则上是用 awk 命令处理每一行,分离出有用的信息。因为每一行数据都是安一定标准输出,所以我们处理起来也不难。

用空白字符(空格或Tab)我们可以得到如下基本代码:

如执行用户代理命令

Screen Shot 2015-11-16 at 6.19.26 PM

下面是一些实用的例子:

列出所有用户代理(user agent)并按出现次数排列(从高到低)

定位网站问题(通过状态码统计)

Screen Shot 2015-11-16 at 6.27.46 PM

第一列个数,第二列状态码(正常值200)

  • 200 – OK
  • 206 – Partial Content
  • 301 – Moved Permanently
  • 302 – Found
  • 304 – Not Modified
  • 401 – Unauthorised (password required)
  • 403 – Forbidden
  • 404 – Not Found

什么引起的404?

丢失文件或资源造成404错误,查看请求 URI 来定位链接。

Screen Shot 2015-11-16 at 6.47.17 PM

404请求答复

Screen Shot 2015-11-16 at 6.49.19 PM

独立请求IP地址

Screen Shot 2015-11-16 at 6.51.24 PM

独立请求IP地址对应的国家

安装依赖

Screen Shot 2015-11-16 at 6.54.36 PM

查看谁在引用你的图片资源(省带宽)

列出空白的用户代理(user agent)

空用户代理有可能是爬虫脚本,当然也有可能是极其重视隐私的用户。用下面命令列出空用户代理对应的IP地址:

负载过高

当你的网站在高负载下,你应该知道高负载是来自真正的用户还是其他什么东东。

  • 配置问题或系统问题
  • 有机器人频繁访问你的网站
  • 拒接服务攻击

Top 10 ip

每个状态码对应的数据传送量(单位KB)

Screen Shot 2015-11-16 at 7.12.02 PM

Top 10 URI

Top 10 user-agents

最近10,000次点击

每天的请求量

Screen Shot 2015-11-16 at 7.17.14 PM

每小时的请求量

注意修改日期参数

Screen Shot 2015-11-16 at 7.18.53 PM

每分钟的请求量

Screen Shot 2015-11-16 at 7.23.05 PM

所有独立访客

今天所有独立访客

这个月所有独立访客

所有独立访客-指定日期

所有独立访客-指定月份

IP对应的请求个数

最受欢迎的URL

实时查看请求

独立IP地址

带时间戳的独立IP地址

独立IP地址和浏览器

独立IP地址和操作系统

相关文章

发表评论

电子邮件地址不会被公开。 必填项已用*标注