前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >日志分析常用命令

日志分析常用命令

作者头像
dys
发布2018-04-03 13:15:23
1.1K0
发布2018-04-03 13:15:23
举报
文章被收录于专栏:性能与架构

下面这3个命令是非常好用的日志分析命令,以apache的日志文件access_log为例

1访问次数最多的IP TOP10

当网络流量突然持续异常时,很有可能是有恶意访问,最快的解决方式就是找出访问量最多的几个ip,暂时禁止其访问,然后再仔细观察

# cat access_log | cut -f1 -d " " | sort | uniq -c | sort -k 1 -n -r | head -10

2被访问次数最多的URL TOP10

了解哪些Url资源的访问量最大,可以帮助我们有针对性的进行优化

# cat access_log | cut -f7 -d " " | sort | uniq -c | sort -k 1 -n -r | head -10

3被请求资源中大小最大的 TOP10

文件大小太大的话会严重影响访问速度,有必要找出大文件进行分析

# cat access_log | sort -k 10 -n -r | head -10

命令解释

这几个命令都是使用了管道“|”把多个命令进行连接,上一个命令的结果交给下一个命令来处理 cat 显示文件内容 cut 是一个选取命令,就是将数据以行为单位进行分析,取出我们想要的 -d : 自定义分隔符,默认为制表符 -f : 与-d一起使用,指定显示哪列 第一个命令中的:cut -f1 -d " " 含义:以空格进行分割,显示结果中的第一列 sort 将文件的每一行作为一个单位,相互比较,比较原则是从首字符向后,依次按ASCII码值进行比较,最后将他们按升序输出 没有参数时就是整行排序 -t : 分隔符,默认是用 [tab] 键来分隔 -k : 选择以哪列进行排序 -n : 使用数字格式进行排序,默认是以文字型态来排序的 -r : 反向排序 uniq 首先比较相邻的行,然后除去第二行和该行的后续副本,重复的行一定要相邻,所以通常与 sort 联合使用,先用 sort 进行排序,然后使用 uniq 去重 -c : 在输出行前面加上每行出现的次数 head 显示结果中头部区域 -10 : 显示头部的10行

综合解释

日志文件的内容示例 183.195.232.39 - - [28/Dec/2015:22:31:48 +0800] "GET /ui-nav.js HTTP/1.1" 304 - 183.195.232.39 - - [28/Dec/2015:22:31:48 +0800] "GET /ui-toggle.js HTTP/1.1" 304 - 183.195.232.38 - - [28/Dec/2015:22:31:48 +0800] "GET /ui-toggle.js HTTP/1.1" 304 - 以第一个命令(查看访问量最大的前10个IP)为例 # cat access_log | cut -f1 -d " " | sort | uniq -c | sort -k 1 -n -r | head -10 cat access_log 先读取 access_log 的内容 cut -f1 -d " " 然后对每行以空格进行分割,只显示第一列(日志的第一列为IP) 输出的结果为: 183.195.232.39 183.195.232.39 183.195.232.38 sort 接下来对IP进行升序排序 输出的结果为: 183.195.232.38 183.195.232.39 183.195.232.39 uniq -c 删除重复的IP,删除的同时记录下相同的IP数量,显示到IP的前面 输出的结果为: 1 183.195.232.38 2 183.195.232.39 sort -k 1 -n -r 对第一列以数字格式倒序排序 输出的结果为: 2 183.195.232.39 1 183.195.232.38 head -10 只显示头10条

本文参与 腾讯云自媒体同步曝光计划,分享自微信公众号。
原始发表:2015-12-29,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 JAVA高性能架构 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 1访问次数最多的IP TOP10
  • 2被访问次数最多的URL TOP10
  • 3被请求资源中大小最大的 TOP10
相关产品与服务
Elasticsearch Service
腾讯云 Elasticsearch Service(ES)是云端全托管海量数据检索分析服务,拥有高性能自研内核,集成X-Pack。ES 支持通过自治索引、存算分离、集群巡检等特性轻松管理集群,也支持免运维、自动弹性、按需使用的 Serverless 模式。使用 ES 您可以高效构建信息检索、日志分析、运维监控等服务,它独特的向量检索还可助您构建基于语义、图像的AI深度应用。
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档