帮助中心 >  行业资讯 >  运维 >  linux下常用的日志分析命令

linux下常用的日志分析命令

2021-09-10 08:28:47 3787

形如下面这样的access.log日志内容:
  116.55.241.13 – - [10/Dec/2010:09:31:17 +0800] “GET /query/trendxml/district/todayreturn/month/2009-12-14/2010-12-09/haizhu_tianhe.xml HTTP/1.1″ 200 1933 “-” “Mozilla/5.0 (Windows; U; Windows NT 5.1; zh-CN; rv:1.9.2.8) Gecko/20100722 Firefox/3.6.8 (.NET CLR 3.5.30729)”
  必须借助命令或脚本才可以分析、提取出有价值的内容。
  以下是收集的一些用于日志分析的命令或脚本,分享下,有用到的朋友参考下吧。
  1,查看apache的进程数
  代码示例:
  ps -aux | grep httpd | wc -l
  2,分析日志查看当天的ip连接数
  代码示例:
  cat default-access_log | grep “10/Dec/2010″ | awk ‘{print $2}’ | sort | uniq -c | sort -nr
  3,查看指定的ip在当天究竟访问了什么url
  代码示例:
  cat default-access_log | grep “10/Dec/2010″ | grep “116.55.241.13″ | awk ‘{print $7}’ | sort | uniq -c | sort -nr
  4,查看当天访问排行前10的url
  代码示例:
  cat default-access_log | grep “10/Dec/2010″ | awk ‘{print $7}’ | sort | uniq -c | sort -nr | head -n 10
  5,看到指定的ip究竟干了什么
  代码示例:
  cat default-access_log | grep 116.55.241.13 | awk ‘{print $1″\t”$8}’ | sort | uniq -c | sort -nr | less
  6,查看访问次数最多的几个分钟(找到热点)
  代码示例:
  awk ‘{print $4}’ default-access_log |cut -c 14-18|sort|uniq -c|sort -nr|head
  7,统计一个文本中包含字符个数
  代码示例:
  cat pic.access.log |grep /2012/ |wc -l
  cat c_access.log |grep "/message/publishmsg/\|/message/publish/" >test1.log

提交成功!非常感谢您的反馈,我们会继续努力做到更好!

这条文档是否有帮助解决问题?

非常抱歉未能帮助到您。为了给您提供更好的服务,我们很需要您进一步的反馈信息:

在文档使用中是否遇到以下问题: