小知识:nginx服务器中access_log日志分析与配置详解

前言

nginx的log日志分为:access log 和 error log

其中access log 记录了哪些用户,哪些页面以及用户浏览器、ip和其他的访问信息

error log 则是记录服务器错误日志

log_format 日志格式语法:

log_format name(格式名字) 格式样式(即想要得到什么样的日志内容)

示例:

?
1
2
3
4
log_format main
$remote_addr – $remote_user [$time_local] “$request”
$status $body_bytes_s ent “$http_referer”
“$http_user_agent” “$http_x_forwarded_for”

错误日志的形式如下:

?
1
2
201.158.69.116 – – [03/Jan/2013:21:17:20 -0600] fwf[-] tip[-] 127.0.0.1:9000 0.007 0.007 MX pythontab.com GET /html/test.html HTTP/1.1 “200” 2426 “http://a.com” “es-ES,es;q=0.8” “Mozilla/5.0 (Windows NT 6.1) AppleWebKit/537.11 (KHTML, like Gecko) Chrome/23.0.1271.97 Safari/537.11”
187.171.69.177 – – [03/Jan/2013:21:17:20 -0600] fwf[-] tip[-] 127.0.0.1:9000 0.006 0.006 MX pythontab.com GET /html/test2.html HTTP/1.1 “200” 2426 “http://a.com” “es-ES,es;q=0.8” “Mozilla/5.0 (Windows NT 6.1) AppleWebKit/537.11 (KHTML, like Gecko) Chrome/23.0.1271.97 Safari/537.11”

从上面我们可以看出几部分信息:

      1.客户端(用户)IP地址。如:上例中的 201.158.69.116

      2.访问时间。如:上例中的 [03/Jan/2013:21:17:20 -0600]

      3.访问端口。如:上例中的 127.0.0.1:9000

      4.响应时间。如:上例中的 0.007

      5.请求时间。如:上例中的 0.007

      6.用户地理位置代码(国家代码)。如:上例中的 MX(墨西哥)

      7.请求的url地址(目标url地址)的host。如:上例中的 pythontab.com

      8.请求方式(GET或者POST等)。如:上例中的 GET

      9.请求url地址(去除host部分)。如:上例中的 /html/test.html

      10.请求状态(状态码,200表示成功,404表示页面不存在,301表示永久重定向等,具体状态码可以在网上找相关文章,不再赘述)。如:上例中的 “200”

      11.请求页面大小,默认为B(byte)。如:上例中的 2426

      12.来源页面,即从哪个页面转到本页,专业名称叫做“referer”。如:上例中的 “http://a.com”

      13.用户浏览器语言。如:上例中的 “es-ES,es;q=0.8”

      14.用户浏览器其他信息,浏览器版本、浏览器类型等。如:上例中的  “Mozilla/5.0 (Windows NT 6.1) AppleWebKit/537.11 (KHTML, like Gecko) Chrome/23.0.1271.97 Safari/537.11”

其实nginx access日志的格式不是一成不变的,是可以自定义的。

在nginx的nginx.conf配置文件找到:log_format 这里就是日志的格式

看一下和上述日志匹配的log格式设置:

?
1
2
3
4
5
6
7
8
9
10
#access日志格式配置,具体参数不再细说,上面都已经说过了,自己对应一下即可
log_format main $remote_addr – $remote_user [$time_local]
fwf[$http_x_forwarded_for] tip[$http_true_client_ip]
$upstream_addr $upstream_response_time $request_time
$geoip_country_code
$http_host $request
“$status” $body_bytes_sent “$http_referer”
“$http_accept_language” “$http_user_agent” ;
#配置access log日志的存储位置及文件,注意:access.log文件是可以按日期进行分割的,方便查看及处理
access_log /home/serversoft/nginx/log/access.log main;

总结

以上就是这篇文章的全部内容了,希望本文的内容对大家的学习或者工作具有一定的参考学习价值,如果有疑问大家可以留言交流,谢谢大家对服务器之家的支持。

原文链接:http://www.pythontab.com/html/2013/linuxkaiyuan_0104/96.html

声明: 猿站网有关资源均来自网络搜集与网友提供,任何涉及商业盈利目的的均不得使用,否则产生的一切后果将由您自己承担! 本平台资源仅供个人学习交流、测试使用 所有内容请在下载后24小时内删除,制止非法恶意传播,不对任何下载或转载者造成的危害负任何法律责任!也请大家支持、购置正版! 。本站一律禁止以任何方式发布或转载任何违法的相关信息访客发现请向站长举报,会员发帖仅代表会员个人观点,并不代表本站赞同其观点和对其真实性负责。本网站的资源部分来源于网络,如有侵权烦请发送邮件至:2697268773@qq.com进行处理。
建站知识

小知识:nginx添加ssl模块的方法教程

2023-4-21 1:41:56

建站知识

小知识:linux网站服务Apache的安装与配置方法详解

2023-4-21 1:55:12

0 条回复 A文章作者 M管理员
    暂无讨论,说说你的看法吧
个人中心
购物车
优惠劵
今日签到
有新私信 私信列表
搜索