iis服务器助手广告广告
返回顶部
首页 > 资讯 > 精选 >Nginx日志格式如何配置
  • 644
分享到

Nginx日志格式如何配置

2023-07-05 12:07:49 644人浏览 安东尼
摘要

本篇内容主要讲解“Nginx日志格式如何配置”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“Nginx日志格式如何配置”吧!上线了一个小的预约程序,配置通过Nginx进行访问入口,默认的日志是没有

本篇内容主要讲解“Nginx日志格式如何配置”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“Nginx日志格式如何配置”吧!

上线了一个小的预约程序,配置通过Nginx进行访问入口,默认的日志是没有请求时间的,因此需要配置一下,将每一次的请求的访问响应时间记录出来,备查与优化使用.

一、默认的日志格式

默认的日志格式如下(默认是注解掉的,系统也自动会使用):

    #log_fORMat  main  '$remote_addr - $remote_user [$time_local] "$request" '    #                  '$status $body_bytes_sent "$Http_referer" '    #                  '"$http_user_agent" "$http_x_forwarded_for"';    #access_log  logs/access.log  main;

二、我使用的日志格式

我仅仅在默认的基础上加上响应时间的两个我较关心的参数:request_time与upstream_response_time

将以下的配置开放并修改(我后面用了格式2,时间在前面,容易查看):

带时间数据参数的日志格式1

    log_format  main  '$remote_addr - $remote_user [$time_local] "$request" '                      '$status $body_bytes_sent "$http_referer" '                      '"$http_user_agent" "$http_x_forwarded_for" "$request_time" "$upstream_response_time"';    access_log  logs/access.log  main;

调整了下时间参数的显示顺序的格式2:

    log_format  main  '$remote_addr - $remote_user [$request_time $upstream_response_time] [$time_local] "$request" '                      '$status $body_bytes_sent "$http_referer" '                      '"$http_user_agent" "$http_x_forwarded_for"';    access_log  logs/access.log  main;

注意的是:log_format与access_log的注释都要放开,仅放开log_format也是不生效的.

#设置成格式2后,可以用相应的正则表达式,查看大于1秒的日志,分两步如下:

##1.高亮时间数据的正则表达式tail -f access.log |grep "\[[0-9]\.[0-9][0-9][0-9] [0-9]\.[0-9][0-9][0-9]\]"##2.大于1秒的日志的正则表达式,即将第一个数字改成[1-9]即可tail -f access.log |grep "\[[1-9]\.[0-9][0-9][0-9] [0-9]\.[0-9][0-9][0-9]\]"

Nginx日志格式如何配置

三、参数

说明

  • $remote_addr:客户端地址

  • $remote_user:客户端用户名称 

  • $time_local:访问时间和时区

  • $request:请求的URI和HTTP协议

  • $status:HTTP请求状态

  • $body_bytes_sent:发送给客户端文件内容大小

  • $http_referer:url跳转来源

  • $http_user_agent:用户终端浏览器等信息

  • $http_host:请求地址,即浏览器中你输入的地址(IP或域名)

  • $request_time:处理请求的总时间,包含了用户数据接收时间

  • $upstream_response_time:建立连接和从上游服务器接收响应主体的最后一个字节之间的时间

  • $upstream_connect_time:花费在与上游服务器建立连接上的时间

  • $upstream_header_time:建立连接和从上游服务器接收响应头的第一个字节之间的时间

四、测试效果

修改前默认日志

127.0.0.1 - - [03/May/2022:12:02:51 +0800] "GET /byhsyyfront/byPages/ HTTP/1.1" 304 0 "-" "Mozilla/5.0 (windows NT 10.0; Win64; x64) AppleWEBKit/537.36 (Khtml, like Gecko) Chrome/99.0.4844.51 Safari/537.36"
127.0.0.1 - - [03/May/2022:12:02:51 +0800] "GET /byhsyyGateway/byhsyySystem/verifyCode/getVerifyCode HTTP/1.1" 200 2553 "http://localhost:8881/byhsyyfront/byPages/" "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/99.0.4844.51 Safari/537.36"

修改后日志

127.0.0.1 - - [03/May/2022:12:00:47 +0800] "GET /byhsyyfront/byPages/ HTTP/1.1" 304 0 "-" "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/99.0.4844.51 Safari/537.36" "-" "0.025" "0.025"
127.0.0.1 - - [03/May/2022:12:00:47 +0800] "GET /byhsyyGateway/byhsyySystem/verifyCode/getVerifyCode HTTP/1.1" 200 2178 "http://localhost:8881/byhsyyfront/byPages/" "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/99.0.4844.51 Safari/537.36" "-" "0.037" "0.037"

可以看到修改后的最后多了两个关于时间的参数数据,可以用于响应时间快慢分析.

到此,相信大家对“Nginx日志格式如何配置”有了更深的了解,不妨来实际操作一番吧!这里是编程网网站,更多相关内容可以进入相关频道进行查询,关注我们,继续学习!

--结束END--

本文标题: Nginx日志格式如何配置

本文链接: https://www.lsjlt.com/news/351801.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

本篇文章演示代码以及资料文档资料下载

下载Word文档到电脑,方便收藏和打印~

下载Word文档
猜你喜欢
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作