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]\]"

三、参数

说明

$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配置-日志格式配置相关推荐

  1. nginx日志格式配置

    nginx作为我们IT中的首选反向代理神器,有时候我们有必要查看nginx中的日志的,但是我们对nginx的日志格式不是很了解怎么办呢?这样以来也是看不懂的. nginx日志 nginx的日志分两种一 ...

  2. nginx-ingress设置日志格式-配置转发真实ip-超时参数配置-会话保持参数

    nginx-ingress设置日志格式-配置转发真实ip-白名单限制 参考官方文档 nginx-ingress官方文档 修改nginx-ingrss的configmap配置文件 apiVersion: ...

  3. linux怎么配置日志,Linux配置日志服务器的图文教程

    Linux配置日志服务器的图文教程 前言 本文主要介绍的是关于Linux配置日志服务器的相关内容,分享出来供大家参考学习,下面话不多说了,来一起看看详细的介绍吧 日志服务器配置文件:/etc/rsys ...

  4. Nginx日志格式配置-转载

    最近项目使用到了nginx的反向代理,配置过程中查询了一些nginx日志配置的问题,便于自己学习查询 nginx服务器日志相关指令主要有两条,一条是log_format,用来设置日志格式,另外一条是a ...

  5. Logback Pattern 日志格式配置

    Logback日志配置示例 <appender name="SYSLOG" class="ch.qos.logback.classic.net.SyslogAppe ...

  6. @slf4j日志格式配置

    使用@Slf4j注解配置日志: 步骤: 在pom.xml中添加lombok; 使用@Slf4j注解: 默认可以使用log.error().log.info().log.debug()等输出: 设置日志 ...

  7. 【笔记】SpringBoot在yml中配置日志格式

    实际上spring boot默认的日志格式(logging.pattern)可以满足大部分场景,但有些场景需要做日志的链路追踪,所以我们就需要在日志文件中,打印特定的"日志ID"来 ...

  8. nginx的日志文件配置

    1)与nginx日志相关的指令有两条:log_format 和 access_log: log_format 设置日志格式: access_log 指定日志文件存放路径: 2)log_foramt 2 ...

  9. nginx开启日志和配置日志文件路径

    一.错误日志 error_log <FILE> <LEVEL>;<FILE>:可以指定任意存放日志的目录<LEVEL>:错误日志级别,常见的错误日志级别 ...

最新文章

  1. mysql 5.7.18-winx64_mysql 5.7.18 winx64安装配置方法图文教程
  2. sql server 海量数据速度提升:SQL优化-索引(11) 【转】
  3. Oracle11g新特性导致空表不能导出问题
  4. Windows Server2008 R2安装wampserver缺少api-ms-win-crt-runtime-l1-1-0.dll解决方案
  5. (线段树模板)A Simple Problem with Integers --POJ--3468
  6. UNITY 优化之带Animator的Go.SetActive耗时问题,在手机上,这个问题似乎并不存在,因为优化了后手机上运行帧率并未明显提升...
  7. [09]CSS 边框与背景 (上)
  8. python数据可视化散点图案例_Python数据可视化—散点图_python 数据可视化
  9. gcc oracle mysql_[转]Windows下用GCC连接MySQL数据库
  10. 我在开发中所遇到的iOS7新特性以及iOS7与iOS6的适配问题总结
  11. yii 获取当前域名_助手类(Helpers): Url 助手(Url) | Yii 2.0 权威指南 | Yii PHP Framework...
  12. IOS 多个UIImageView 加载高清大图时内存管理
  13. 深入浅出通信原理知识点10
  14. 十大新兴编程语言_十大编程语言
  15. 狂热分子——码头工人的哲学沉思录
  16. 电脑没有“立体声混音”设备怎么办,虚拟声卡安装教程
  17. matlab 矩阵左右乘除
  18. SQLAlchemy黄金体验
  19. 如何在输入特殊符号,例如角度“∠”
  20. Adobe Flash Player 本地播放器

热门文章

  1. java删除数组中重复元素的方法
  2. c语言获取当前系统日期时间,C语言获取系统当前时间
  3. PyQt5入门(十四)树控件QTreeWidget
  4. js原生的ajax写法
  5. 常见网络编程面试题以及答案(网络面试30题)
  6. 获取 html class属性,jquery获取class属性的值
  7. IDEA 设置SVN忽略文件夹/文件
  8. 格桑花---德乾旺姆
  9. PHP的几种加密解密算法
  10. 雅虎yql_如何删除您的Yahoo Mail帐户