awk分析nginx日志中响应时间的方法

linux用grep、awk分析nginx的access.log的日志,根据时间段截取日志、统计某接口/关键字访问成功数量及平均响应时间。 衍生文章链接:https://blog.youkuaiyun.com/enjoyphp/article/details/100024220 项目中亲测,命令全部有效 日志截取,从总日志文件中截取昨天已整天的数据出来,并覆盖到新文件中: cat access.log | awk '$4 >="[14/Mar/2019:00:00:00" && $4 <="[14/Ma... 阅读详情
针对响应时间慢的问题,我们在nginx日志格式中增加响应时间,现在需要针对响应时间进行分析,查找出相对较慢的响应时间。
 

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"';
 

2、输出日志内容:

 
复制代码
118.187.188.188 - - [19/Jun/2015:09:26:08 +0800] "GET /wap/data/ipad/gsxw/1.json HTTP/1.1" 304 0 "-" "android-async-http/1.4.3 (http://loopj.com/android-async-http)" - "0.287"
61.179.109.132 - - [19/Jun/2015:09:26:08 +0800] "GET /wap/data/ipad/gsxw/1.json HTTP/1.1" 304 0 "-" "android-async-http/1.4.3 (http://loopj.com/android-async-http)" - "0.290"
61.179.107.103 - - [19/Jun/2015:09:26:08 +0800] "GET /wap/data/ipad/gsxw/1.json HTTP/1.1" 304 0 "-" "android-async-http/1.4.3 (http://loopj.com/android-async-http)" - "0.288"
218.92.220.57 - - [19/Jun/2015:09:26:08 +0800] "GET /wap/news/ipad2_gg.html HTTP/1.1" 200 1259 "-" "Mozilla/5.0 (iPad; CPU OS 5_1_1 like Mac OS X) AppleWebKit/534.46 (KHTML, like Gecko) Mobile/9B206" - "0.292"
182.140.237.207 - - [19/Jun/2015:09:26:08 +0800] "GET /wap/data/advImg.json?keytime=20150619092610 HTTP/1.1" 200 589 "-" "Dalvik/1.6.0 (Linux; U; Android 4.3; GT-I9308 Build/JSS15J)" - "0.276"
复制代码
 

3、分析nginx日志

 

  3.1、打印响应时间并去除引号

 

#awk '{print $NF}' news.log | awk -F "\"" '{print $2}'  >  time.txt

time.txt文件内容 

复制代码
4.822
4.805
0.000
0.000
0.000
4.806
4.801
0.000
4.781
0.000
4.777
复制代码

 

  

  3.2、合并日志文件,增加修改后的响应时间

 

paste  -d " " news.log time.txt > news1.log
合并后news1.log文件内容
 
复制代码
218.92.220.156 - - [19/Jun/2015:09:58:25 +0800] "GET /wap/news/ipad2_kxcwsj.html HTTP/1.1" 304 0 "-" "Mozilla/5.0 (iPad; CPU OS 8_3 like Mac OS X) AppleWebKit/600.1.
4 (KHTML, like Gecko) Mobile/12F69" - "4.822" 4.822
61.179.107.29 - - [19/Jun/2015:09:58:25 +0800] "GET /wap/news/finance-dividends.html HTTP/1.1" 304 0 "-" "Mozilla/5.0 (Linux; U; Android 4.3; zh-cn; SM-G7108V Buil
d/JLS36C) AppleWebKit/534.30 (KHTML, like Gecko) Version/4.0 Mobile Safari/534.30" - "4.805" 4.805
61.179.107.32 - - [19/Jun/2015:09:58:25 +0800] "GET /wap/data/1.json HTTP/1.1" 304 0 "-" "android-async-http/1.4.3 (http://loopj.com/android-async-htt
p)" - "0.000" 0.000
61.179.107.129 - - [19/Jun/2015:09:58:25 +0800] "GET /wap/data/index.json HTTP/1.1" 304 0 "-" "DZHTremereMobile/3.05 CFNetwork/609 Darwin/13.0.0" - "0.000"
0.000
101.254.206.41 - - [19/Jun/2015:09:58:25 +0800] "GET /wap/data/1.json HTTP/1.1" 304 0 "-" "android-async-http/1.4.3 (http://loopj.com/android-async-htt
p)" - "0.000" 0.000
61.179.107.132 - - [19/Jun/2015:09:58:25 +0800] "GET /wap/data/t_index.html?jsonname=rdht/200000441719.json&class=zxts HTTP/1.1" 200 2587 "/wap/news/1.html" "Mozilla/5.0 (iPad; CPU OS 8_2 like Mac OS X) AppleWebKit/600.1.4 (KHTML, like Gecko) Mobile/12D508" - "4.806" 4.806
61.179.107.103 - - [19/Jun/2015:09:58:25 +0800] "GET /wap/data/1.json HTTP/1.1" 304 0 "-" "android-async-http/1.4.3 (http://loopj.com/android-async-htt
p)" - "4.801" 4.801
复制代码

查询结果文件内容
复制代码
218.92.220.156 [19/Jun/2015:09:58:25 "GET /wap/news/ipad2_kxcwsj.html 4.822
61.179.107.29 [19/Jun/2015:09:58:25 "GET /wap/news/finance-dividends.html 4.805
61.179.107.32 [19/Jun/2015:09:58:25 "GET /wap/data/t_index.html?jsonname=rdht/200000441719.json&class=zxts 4.806
61.179.107.103 [19/Jun/2015:09:58:25 "GET /wap/data/1.json 4.801
218.92.220.58 [19/Jun/2015:09:58:25 "GET /wap/news/ipad2_kxcwsj.html 4.781
115.231.82.33 [19/Jun/2015:09:58:25 "GET /wap/data/gsxw/1.json 4.777
61.179.107.129 [19/Jun/2015:09:58:25 "GET /wap/news/trader-index.html 4.773
222.88.95.136 [19/Jun/2015:09:58:25 "GET /wap/news/finance-indicators.html 4.771
218.92.220.59 [19/Jun/2015:09:58:25 "GET /wap/data/index.json 4.786
101.254.206.47 [19/Jun/2015:09:58:25 "GET /wap/data/1.json 4.767
复制代码

4、可以将以上几个命令都加入到一个分析脚本

 
编写 loganalysis.sh 脚本
复制代码
 1 #!/bin/bash
 2 
 3 if [ $1 ==" " ]
 4 then
 5        echo "Usage: ./loganalysis.sh logname"
 6 exit 0
 7 else
 8        cat $1 | awk '{print $NF}'  | awk -F "\"" '{print $2}'  >  time.txt
 9        echo "split request_time over!!!"
10 
11        paste  -d " " $1 time.txt > new.log
12        echo "build new logfile over!!!"
13 
14        awk '($NF>1){print$1" "$4" "$6" "$7" "$NF}' new.log > slowtime.txt
15        echo "please see slowtime in slowtime.txt!!!" 
16 
17        rm -f time.txt
18        rm -f new.log
19 fi
复制代码

 

原文:https://www.cnblogs.com/gongwz/p/5311728.html

使用网分对晶体ESR/L1/C1/C0进行测量计算 Use R&amp;S Vector Network Analyzer test XTAL ESR/L1/C1/C0 測量方法:使用儀器的Port1端口,測量XTAL的S11,通過諧振的參數計算出ESR/L1/C1/C0的值。 實際晶體的等效模型:通常方便晶體分析,使用下圖(b)的等效模型,但實際測量發現晶體存在多個串聯諧振點,實際等效模型更接近(c)。 儀器測量到的S11,其中M... 阅读详情

相关推荐

[官方培训]22-UE资产优化 Epic 肖月 笔记

Nanite+Lumen目标:面向TA,美术,不影响视觉的前提下,优化运行和编辑效率引擎:UE5.1延迟管线平台:主流PC,Windows 10 with DX12。

Tcohneyn的博客 1576

awk nginx日志分析接口响应时间

awk命令进行nginx日志文件响应时间的分析,分析指写格式的nginx日志文件,打印响应时间并且去除引号,查找响应时间大于1秒的url地址等。 awk命令分析nginx响应时间,线上环境nginx日志格式带上了引号,在用awk分析日志时注意下细节。 一、nginx日志格式   log_format main ‘$remote_add

只知其一,等于一无所知 5463

01-认识脑电信号及相关信号的预处理过程

脑电信号处理过程脑电实验为什么要预处理预处理方法降采样如何改变文本的样式插入链接与图片如何插入一段漂亮的代码片生成一个适合你的列表创建一个表格设定内容居中、居左、居右SmartyPants创建一个自定义列表如何创建一个注脚注释也是必不可少的KaTeX数学公式新的甘特图功能,丰富你的文章UML 图表FLowchart流程图导出与导入导出导入 脑电实验 本博客主要是记录基于脑电信号的情绪识别方法的研究...

脑机交流者的博客 7661

接口响应时间长排查,通过nginx日志查看接口响应时间

场景 vue项目中,页面请求接口响应速度非常慢,F12打开谷歌控制台,查看network,发现响应时间为1.14秒 排查问题 接口响应速度慢,后端打断点进入接口到返回这段时间有很快,要判断是什么问题,首先要确定是前端问题还是后端问题,可通过nginx日志查看接口响应时间 1. nginx查看日志 打开终端,登录服务器并输入服务器密码 //ssh 用户名@服务器ip ssh root@192.168.0.132 切换到nginx目录 cd /var/log/nginx/ 查看nginx日志

meimeib的博客 1万+

LVDS高速ADC接口, xilinx fpga实现

FPGA实现lvds高速ADC数据接口,窗口对齐算法,Verilog源码

kuangxin的博客 6万+

川崎机器人总线通信_三菱PLC和发那科机器人进行CCLINK总线通信

三菱CCLINK主站模块采用QJ61BT11N,该模块用在Q系列PLC上,如果是5U或3UPLC,可用FX5-CNV-BUS加FX3U-16CCL-M或FX5-CCL-M模块。本教程以Q系列为例CCLINK接线方法如下模块拨码含义如下接线和拨码设置好后,接着在编程软件上设置CCLINK通信参数打开编程软件,在工程导航栏打开参数——网络参数,选中CCLINK打开。打开如下画面起始IO为模块本体占用I...

weixin_42300398的博客 7554

awk分析日志得到响应时间的最大最小和平均值

今天有个分析日志的需求,要获得指定的几个请求的响应时间的最大值,最小值和平均值 从nginx配置中找到日志的格式如下: log_format _main '$remote_addr "$time_iso8601" $request_method "$uri" "$args" "$request_body" $status $body_bytes_sent $request_time "$http_user_agent"'; 倒数第二项$request_time即为响应时间 实际日志截取部分如下,

大鹏 804

[PCIE5.0] 4.2.3.2 Encoding of Presets

• 发射器预设:发射器预设值用4位二进制编码,表示不同的预设设置(P0 到 P10),这些设置定义了信号的传输特性。• 接收器预设提示:接收器预设提示是通过3位二进制编码告诉接收器建议的增益值,用于调整接收器的灵敏度(适用于8.0 GT/s数据速率)。

系统固件工程师 575

通过nginx日志,查看网页响应时间

在nginx.conf文件中配置log_format log_format timed_combined '$remote_addr - $remote_user [$time_local] "$request" ' '$status $body_bytes_sent "$http_referer" ' '"$http_user_agent" "$http_x_forwarded_for" '

Cookie_1030的专栏 4095

宇树G1开发实践--PPT汇报(基础版)

本文介绍了一套基于宇树G1人形机器人的PPT自动演示系统,可实现"一键启动、自动演讲"功能。系统通过多线程同步技术,将音频播放与机器人动作完美结合,支持12种预设社交互动动作。硬件依赖宇树G1机器人、外接音响和网络连接,软件采用Python SDK和ALSA音频工具。核心功能包括音频文件自动排序、外接音响播放控制、机器人动作执行及音画同步。使用时需配置网络接口和音频设备号,运行后自动按顺序播放音频并执行随机动作。系统特别强调了安全注意事项,并提供了常见问题解决方案,适用于展会、汇报等需要

m0_47999117的博客 511

【PCB专题】Allegro导出3D文件

Allegro中如何导出3D文件,有没有一键导出操作?

一点硬件 4990

Nginx的日志怎么看,在哪看,access.log日志内容详解

了解这些字段的含义有助于分析网站的流量模式、用户行为以及调试可能出现的问题。例如,通过分析状态码可以发现哪些页面存在访问问题,请求时长可以帮助识别服务器性能瓶颈,而浏览器信息则对于优化用户体验非常重要。Nginx的access.log日志内容提供了关于用户请求和服务器响应的详细信息。此外,Nginx允许通过配置文件中的access_log指令来自定义日志记录的内容和格式,以满足特定的监控和分析需求。Nginx 的日志文件通常位于服务器的文件系统中,具体位置可能因配置而异。

m0_74823947的博客 7626

nvidia jetson orin调试 MAX96712 serdes相机(SG2-AR0233C-GMSL2)

背景:想了解一下关于nvidia orin camera相关的模块,基于Drive Orin demo板的话,没有合适的相机,用 nvsipl框架点亮 GMSL相机不知如何下手,那么基于nvidia Jetson orin的话,目前国内有对应的转接板以及GMSL相机可以参考,基于此,那么本文详细记录一下关于nvidia orin的相关踩坑记录;需要Nvidia Jetson Orin开发板一个,MIPI转接板一个,MIPI转GMSL转接板一个,GMSL线束(fakra单线束),GMSL摄像头一个。

qq_30025621的博客 4448

linux awk nginx日志分析,awk分析nginx日志中的网页响应时间

nginx日志可以十分方便的看到每一个请求的响应速度,通常我会用awk去分析这些请求耗时。通常nginx的log配置是这样的log_format access_comment '$remote_addr - $remote_user [$time_local] "$request" ''$status $body_bytes_sent "$http_referer" ''"$http_user_a...

weixin_30986079的博客 625

Data-Structures-and-Algorithm-Analysis-in-Java.pdf

作者: Weiss, Mark A. 出版社: Addison Wesley Data Structures and Algorithm Analysis in Java is an “advanced algorithms” book that fits between traditional CS2 and Algorithms Analysis courses. In the old ACM Curriculum Guidelines, this course was known as CS7. This text is for readers who want to learn good programming and algorithm analysis skills simultaneously so that they can develop such programs with the maximum amo...

TMS_WebGMaps_1.9.8.0_Full_Source

TMS_WebGMaps_1.9.8.0_Full_Source 全源码 delphi cbuilder

nginx日志打印响应时间

日志格式: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"';配置:server {server_name...

enchanterblue的专栏 4687

Camera2Demo

在Camera2 的基础上进行封装,使得Camera2一堆初始化逻辑与Activity分离,降低耦合度,完成预览拍照并保存的操作

linux awk nginx日志分析,awk分析nginx日志里面的接口响应时间

最近,有客户反应客户端卡,老板集合技术人员开会讨论,找出慢的原因,由此产生了分析nginx响应时间,由于线上环境nginx日志格式带上了引号,处理起来有点麻烦,以下是处理过程一、nginx日志格式log_format main ‘$remote_addr – $remote_user [$time_iso8601] “$request” ‘‘$status $body_bytes_sent “$h...

weixin_39618456的博客 643

WINCC7.3破解文件

WINCC7.3硬件够破解文件,有需要的下载!WINCC7.3硬件够破解文件,有需要的下载!

性能工具之linux常见日志统计分析命令

文章目录引言 引言 在上文中,我们已经详细介绍linux三剑客的基本使用,接下来我们看看具体在性能测试领域的运用,本文主要介绍的是在Tomcat和Nginx日志的统计分析。 ...

7DGroup,让技术更有价值! 3091

用 awk 和 goaccess 分析nginx accesslog

awk 方式 本文主要用这种方式实现 统计 access.log 超过 1s 的记录。 思路:先用 awk 将每天切割的 nginx 日志生成自定义的分析结果文件 ,由 python 脚本处理,导入mysql :记录日期,慢Url 路径,慢Url 最短时间,最差时间,访问次数 ,是否修复 ,修复日期等,最后由前端进行展示。 按天切割 Nginx 日志 这里为了每天夜里只分析当天生成的nginx日志...

Leon的博客 1046

(转)Nginx 日志分析及性能排查

https://www.cnblogs.com/kevingrace/p/8483089.html (更详细) https://www.cnblogs.com/handongyu/p/6513185.html (如下)   最近一直在做性能排查,思路就是根据分析Nginx日志,得到响应耗时的url、以及请求时间,再得到这段时间的请求量,并发量,分析是并发的原因,还是本身就比较慢,如果是应用本...

A9925的专栏 413

awk实例

1.时间段匹配 [root@centos-1 ~]# cat c 10:01 10:02 10:03 10:05 10:06 10:07 12:01 11:01 [root@centos-1 ~]#awk '$1>="10:05" && $1<="11:10"' c 10:05 10:06 10:07 11:01 awk的时间匹配...

weixin_34130269的博客 88

一起分析Nginx 日志及性能排查

导读 最近一直在做性能排查,思路就是根据分析nginx日志,得到响应耗时的url、以及请求时间,再得到这段时间的请求量,并发量,分析是并发的原因,还是本身就比较慢,如果是应用本身的原因,只需要找到对应的代码,然后进行优化就好了 我找到的几个原因,基本就是后端sql运行的比较多,单次访问看不出来,但是人比较多的时候就比较慢了,人少的时候20-200毫秒,人多的时候,200-6000毫秒,优化之后基本保持在几十毫秒,优化策略就是减少不必要的sql,加上缓存,基本..

Listen2You的博客 520

Linux 日志分析实战:grep 组合 awk/sed 实现 5 类复杂多关键字过滤

本文详细介绍了在Linux日志分析中如何组合使用grep、awk和sed命令实现复杂多关键字过滤。通过5个典型场景,包括多条件与、或、非逻辑过滤,上下文提取,字段级处理及实战脚本,帮助运维工程师高效解决日志分析难题。特别强调了使用正则表达式匹配多个关键字的高级技巧和性能优化方法。

weixin_28716181的博客 274
上一篇: Linux AWK 命令
下一篇: awk 分析nginx日志常用命令
csdcit
博客等级 码龄16年 3粉丝 13原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值