《Linux 文本处理》- awk 分析 nginx 日志
废话不多说,简单了解一下 awk
- 强大的文本分析工具,也就是分析日志
最常用的就是分析日志了吧,做统计什么,这里也拿 nginx 日志来做分析
1:统计出现次数
- 比如状态码出现次数
- 先直接上命令
awk '{print $9}' access_log | sort | uniq -c | sort -rn
- 可能会有一些疑惑,这个$9 是什么?
- 我们拿出一条日志来看一下先
/Oct/::: +] 123.124.16.83 192.168.240.255
- 我们可以看到我们需要状态码的状态码,但是,他在第几位呢?
- 在 awk 中,只要碰到空格,就说明它占了一位,也就是说
-
$ 123.124.16.83 $ - $ - $ [/Oct/::: .... SO $ 状态码
-
- 这样我们就找到我们的状态码,之后的 sort | uniq 命令,可以自己看下,会更好的理解这个命令
2:筛选特定的日志
- 比如我们发现了异常,要找到所有状态码为 302 的 access_log
- 直接上命令
awk '$9~/302/{print}' accrss_log
- 之前我们已经找到了 $9 是我们的状态码
- 这里使用了 正则 匹配所有等于 302 的状态码
- 当然,awk 也支持其他的方式
比如,使用 == 来匹配 awk '$9=="302" {print}' access_log
- 这里列出条件操作符
< 小于 <= 小于等于 == 等于 != 不等于 > 大于 >= 大于等于 ~ 匹配正则表达式 !~ 不匹配正则表达式
《Linux 文本处理》- awk 分析 nginx 日志的更多相关文章
- shell脚本分析nginx日志
shell脚本分析nginx日志: name=`awk -F ',' '{print $13":"$32}' $file | awk -F ':' '{print $4}'`ech ...
- 烂泥:利用awstats分析nginx日志
本文由ilanniweb提供友情赞助,首发于烂泥行天下 想要获得更多的文章,可以关注我的微信ilanniweb 昨天把nginx的日志进行了切割,关于如何切割nginx日志,可以查看<烂泥:切割 ...
- elk实战分析nginx日志文档
elk实战分析nginx日志文档 架构: kibana <--- es-cluster <--- logstash <--- filebeat 环境准备:192.168.3.1 no ...
- elk平台分析nginx日志的基本搭建
一.elk套件介绍 ELK 由 ElasticSearch . Logstash 和 Kiabana 三个开源工具组成.官方网站: https://www.elastic.co/products El ...
- 一天,python搞个分析NGINX日志的脚本
准备给ZABBIX用的. 统计接口访问字次,平均响应时间,4XX,5XX次数 以后可以再改进.. #!/usr/bin/env python # coding: utf-8 ############# ...
- 利用python分析nginx日志
最近在学习python,写了个脚本分析nginx日志,练练手.写得比较粗糙,但基本功能可以实现. 脚本功能:查找出当天访问次数前十位的IP,并获取该IP来源,并将分析结果发送邮件到指定邮箱. 实现前两 ...
- hive分析nginx日志之UDF清洗数据
hive分析nginx日志一:http://www.cnblogs.com/wcwen1990/p/7066230.html hive分析nginx日志二:http://www.cnblogs.com ...
- awstat分析nginx日志
awstat分析nginx日志 http://lxw66.blog.51cto.com/5547576/1323712 server{ listen ; server_name localhost; ...
- 使用Hive的正则解析器RegexSerDe分析nginx日志
1.环境: hadoop-2.6.0 + apache-hive-1.2.0-bin 2.使用Hive分析nginx日志,站点的訪问日志部分内容为: cat /home/hadoop/hivetest ...
随机推荐
- Vue中使用ECharts画散点图加均值线与阴影区域
[本文出自天外归云的博客园] 需求 1. Vue中使用ECharts画散点图 2. 在图中加入加均值线 3. 在图中标注出阴影区域 实现 实现这个需求,要明确两点: 1. 知道如何在vue中使用ech ...
- TCP/IP四层模型讲解笔记
本文转载自:http://www.vuln.cn/2041 OSI七层模型 表示层:用来解码不同的格式为机器语言,以及其他功能. 会话层:判断是否需要网络传输. 传输层:识别端口来指定服务器,如指 ...
- CentOs 6.x 升级 Python 版本【转】
在CentOS 6.X 上面安装 Python 2.7.X CentOS 6.X 自带的python版本是 2.6 , 由于工作需要,很多时候需要2.7版本.所以需要进行版本升级.由于一些系统工具和服 ...
- hdoj:2022
#include <iostream> #include <string> using namespace std; int main() { int m, n; int x, ...
- mongo 删除内嵌数组元素
文档格式如下: { "_id" : ObjectId("56e2a92ccc6dd2271953e502"), "links": [ { & ...
- SpringDataJPA - 复杂查询总结 (多表关联 以及 自定义分页 )
实体类 @Entity @Table(name = "t_hotel") @Data public class THotel { @Id private int id; priva ...
- 嵌入式开发之hi3519---PCIE DMA
http://blog.csdn.net/abcamus/article/details/76167747 大话pcie dma http://blog.csdn.net/qingfengtsing/ ...
- Python套接字编程(1)——socket模块与套接字编程
在Python网络编程系列,我们主要学习以下内容: 1. socket模块与基本套接字编程 2. socket模块的其他网络编程功能 3. SocketServer模块与简单并发服务器 4. 异步编程 ...
- [AWS] OAuth2.0
Ref: 理解OAuth 2.0 若干专有名词: (1)Third-party application:第三方应用程序,本文中又称"客户端"(client),即上一节例子中的&qu ...
- c# 二十四小时制
是显示数据时时间格式化12小时制的问题 HH为24小时制 DataFormatString="{0:yyyy-MM-dd HH:mm:ss}" hh为12小时制 DataForma ...