性能测试分析之Nginx日志

本文涉及的产品
性能测试 PTS,5000VUM额度
日志服务 SLS,月写入数据量 50GB 1个月
简介: 干货

首先需要介绍一下基于linux的文本分析的一些命令工具


awk:

  awk是一个强大的文本分析工具,相对于grep的查找,sed的编辑,

  awk在其对数据分析并生成报告时,显得尤为强大。

  简单来说awk就是把文件逐行的读入,以空格为默认分隔符将每行切片,切开的部分再进行各种分析处理。

  它允许您创建简短的程序,这些程序读取输入文件、为数据排序、处理数据、对输入执行计算以及生成报表,还有无数其他的功能。

awk工作流程:

  读入有"\n"换行符分割的一条记录,然后把记录按照指定的域分隔符划分域,填充域

  $0表示所有的域,$1表示第一个域,以此类推

  默认域分隔符是空白键或者tab键


sort:

    将文件的每一行作为一个单位,相互比较,比较原则是从首字符向后,依次按ASCII码值进行比较,最后将他们按升序输出。


uniq:

   用于去除有序文件中的重复行并将结果输出到标准输出。uniq经常和sort合用,为了使uniq起作用,所有的重复行必须是相邻的


wc:

  利用wc指令我们可以计算文件的Byte数、字数、或是列数,若不指定文件名称、或是所给予的文件名为"-",则wc指令会从标准输入设备读取数据。



Nginx 日志分析,我直接用的我机器上的nginx日志,默认的都是可以的,列举几个简单常用的, 如果不清楚你的nginx日志地址,查看nginx.conf文件即可,看下我这边的日志截图:

image.png


awk '{print $1}' access.log       # IP 地址  ($remote_addr)  如下图所示,其他不再截图示意,大家自行操作

image.png

awk '{print $4,$5}' access.log    # 日期和时间  ([$time_local])
awk '{print $7}' access _log      # URI ($request)
awk '{print $9}' access _log      # 状态码 ($status)
awk '{print $10}' access _log     # 响应大小 ($body_bytes_sent)
awk '{print $12}' access _log     # 代理
存在日志格式有出入,命令需求调整,但思路是一致的
1.列举一些组和命令,根据访问IP统计UV
awk '{print $1}'  access.log|sort | uniq -c |wc -l
2.统计访问URL统计PV
awk '{print $7}' access.log|wc -l
3.查询访问最频繁的URL
awk '{print $7}' access.log|sort | uniq -c |sort -n -k 1 -r|more
4.查询访问最频繁的IP
awk '{print $1}' access.log|sort | uniq -c |sort -n -k 1 -r|more
5.访问最多的10个ip及访问次数
awk '{print $1}' 日志地址 | sort | uniq -c | sort -n -k 1 -r | head -n 10
相关实践学习
日志服务之使用Nginx模式采集日志
本文介绍如何通过日志服务控制台创建Nginx模式的Logtail配置快速采集Nginx日志并进行多维度分析。
目录
打赏
0
0
0
0
13
分享
相关文章
SelectDB 实现日志高效存储与实时分析,完成任务可领取积分、餐具套装/水杯/帆布包!
SelectDB 实现日志高效存储与实时分析,完成任务可领取积分、餐具套装/水杯/帆布包!
SLS 重磅升级:超大规模数据实现完全精确分析
SLS 全新推出的「SQL 完全精确」模式,通过“限”与“换”的策略切换,在快速分析与精确计算之间实现平衡,满足用户对于超大数据规模分析结果精确的刚性需求。标志着其在超大规模日志数据分析领域再次迈出了重要的一步。
290 117
ELK实现nginx、mysql、http的日志可视化实验
通过本文的步骤,你可以成功配置ELK(Elasticsearch, Logstash, Kibana)来实现nginx、mysql和http日志的可视化。通过Kibana,你可以直观地查看和分析日志数据,从而更好地监控和管理系统。希望这些步骤能帮助你在实际项目中有效地利用ELK来处理日志数据。
265 90
MiniMax GenAI 可观测性分析 :基于阿里云 SelectDB 构建 PB 级别日志系统
基于阿里云SelectDB,MiniMax构建了覆盖国内及海外业务的日志可观测中台,总体数据规模超过数PB,日均新增日志写入量达数百TB。系统在P95分位查询场景下的响应时间小于3秒,峰值时刻实现了超过10GB/s的读写吞吐。通过存算分离、高压缩比算法和单副本热缓存等技术手段,MiniMax在优化性能的同时显著降低了建设成本,计算资源用量降低40%,热数据存储用量降低50%,为未来业务的高速发展和技术演进奠定了坚实基础。
MiniMax GenAI 可观测性分析 :基于阿里云 SelectDB 构建 PB 级别日志系统
让跨 project 联查更轻松,SLS StoreView 查询和分析实践
让跨 project 联查更轻松,SLS StoreView 查询和分析实践
智能日志分析:用AI点亮运维的未来
智能日志分析:用AI点亮运维的未来
778 15
基于阿里云 EMR Serverless Spark 版快速搭建OSS日志分析应用
基于阿里云 EMR Serverless Spark 版快速搭建OSS日志分析应用
MarS:微软开源金融市场模拟预测引擎,支持策略测试、风险管理和市场分析
MarS 是微软亚洲研究院推出的金融市场模拟预测引擎,基于生成型基础模型 LMM,支持无风险环境下的交易策略测试、风险管理和市场分析。
137 8
MarS:微软开源金融市场模拟预测引擎,支持策略测试、风险管理和市场分析
MySQL事务日志-Undo Log工作原理分析
事务的持久性是交由Redo Log来保证,原子性则是交由Undo Log来保证。如果事务中的SQL执行到一半出现错误,需要把前面已经执行过的SQL撤销以达到原子性的目的,这个过程也叫做"回滚",所以Undo Log也叫回滚日志。
163 7
MySQL事务日志-Undo Log工作原理分析
C#集合数据去重的5种方式及其性能对比测试分析
C#集合数据去重的5种方式及其性能对比测试分析
60 11

热门文章

最新文章

下一篇
oss创建bucket