`
marb
  • 浏览: 418819 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

shell脚本分析nginx日志

 
阅读更多
178.255.215.86 - - [04/Jul/2013:00:00:31 +0800] "GET /tag/316/PostgreSQL HTTP/1.1" 200 4779 "-" "Mozilla/5.0 (compatible; Exabot/3.0 (BiggerBetter); +http://www.exabot.com/go/robot)" "-"- 
178.255.215.86 - - [04/Jul/2013:00:00:34 +0800] "GET /tag/317/edit HTTP/1.1" 303 5 "-" "Mozilla/5.0 (compatible; Exabot/3.0 (BiggerBetter); +http://www.exabot.com/go/robot)" "-"- 
103.29.134.200 - - [04/Jul/2013:00:00:34 +0800] "GET /code-snippet/2022/edit HTTP/1.0" 303 0 "-" "Mozilla/5.0 (Windows NT 6.1; rv:17.0) Gecko/17.0 Firefox/17.0" "-"- 
103.29.134.200 - - [04/Jul/2013:00:00:35 +0800] "GET /user/login?url=http%3A//outofmemory.cn/code-snippet/2022/edit HTTP/1.0" 200 4748 "-" "Mozilla/5.0 (Windows NT 6.1; rv:17.0) Gecko/17.0 Firefox/17.0" "-"-

 

以下脚本都是基于上面日志格式的,如果你的日志格式不同需要调整awk后面的参数。

分析日志中的UserAgent

cat access_20130704.log | awk -F "\""'{print $(NF-3)}'| sort | uniq -c | sort -nr | head -20

上面的脚本将分析出日志文件中最多的20个UserAgent

分析日志中那些IP访问最多

cat access_20130704.log | awk '{print $1}'| sort | uniq -c | sort -nr | head -20

分析日志中每分钟请求url排序

cat access.2013-11-19.log| awk '{arr[$4]++} END{for(a in arr) print a, arr[a]}' | sort >111

分析日志中那些Url请求访问次数最多

cat access_20130704.log | awk -F "\""'{print $(NF-5)}'| sort | uniq -c | sort -nr | head -20
分享到:
评论

相关推荐

    shell脚本实现nginx日志分割

    本解本实现了使用shell脚本实现nginx日志分割,大家如果没资源分下载,可以转至:https://mp.csdn.net/mdeditor/85233117# 去查看源代码。谢谢大家

    shell脚本分析 nginx日志访问次数最多及最耗时的页面(慢查询)

    这个脚本类似于`MySQL`中的慢查询日志分析,但针对的是Web页面的慢访问情况。 首先,我们需要了解`nginx`的日志格式。在提供的配置中,`log_format`定义了主要的日志格式,其中包含了IP地址(第一列)和请求耗时...

    用shell脚本分析Nginx日志

    本文将介绍用shell脚本来分析Nginx负载均衡器的日志,这样可以快速得出排名靠前的网站和IP等,推荐大家使用线上环境下的shell脚本。本文中的shell脚本又分为两种情况,第一种情况是Nginx作为前端的负载均衡器,其...

    nginx 最常使用的日志分析shell脚本

    下面分享一下我用Shell编写的分析Nginx日志的脚本,它可以快速得出排名最前的网 站和IP等,内容如下所示: Most of the ip: ------------------------------------------- 220 59.41.24.48 178 59.41.24.80 172 ...

    开启、停止 nginx 的shell脚本

    标题中的“开启、停止 nginx 的 shell 脚本”指的是使用 Linux shell 脚本来启动或停止 Nginx 服务器,这是一个常见的系统管理员任务。Nginx 是一款高性能的 Web 和反向代理服务器,广泛应用于网站托管和服务提供。...

    Nginx日志自动归档备份shell脚本log.sh

    Nginx日志自动归档备份shell脚本log

    自动reload nginx解决nginx对动态域名不重新解析的Shell脚本

    为了解决这个问题,我们可以编写一个Shell脚本来定期检查IP变化并自动执行`nginx -s reload`命令来强制Nginx重新加载配置。 ### Shell脚本工作原理 1. **检测IP变化**:首先,脚本会定期读取动态DNS服务提供的API...

    shell脚本(监控日志发告警邮件)

    监控生产环境nginx日志发告警邮件,需要使用linux系统的定时任务,如5分钟执行或者其他时间间隔

    shell脚本编程100例

    本书《shell脚本编程100例》为读者提供了100个实战性的shell脚本编程实例,涵盖了检测网段主机状态、猜数字游戏、打印乘法口诀、使用rsync备份数据、切割Nginx日志、监控服务端口、使用mtime删除历史文件或日志文件...

    nginx一键部署,包含shell脚本及nginx安装包

    在这个压缩包中,我们拥有一个名为 "install_nginx" 的 shell 脚本,用于简化 Nginx 的安装过程,使得在服务器上快速部署 Nginx 成为可能。 **一、Nginx 的基本概念** 1. **Web 服务器**:Nginx 主要工作是接收...

    109个shell脚本合集.pdf

    Shell脚本可以自动切割日志文件,以便更好地管理日志。 通过这些Shell脚本,我们可以更好地管理我们的计算机系统,提高工作效率,节省时间。熟练掌握Shell脚本可以让我们操作计算机变得更加轻松,也会节省很多时间...

    使用shell脚本对Nginx日志进行切分的示例代码

    本文介绍了使用shell脚本对Nginx日志进行切分的示例代码,分享给大家,具体如下: 1.日志格式 默认的日志格式: main log_format main '$remote_addr - $remote_user [$time_local] $request ' $status $body_bytes...

    nginx按天进行日志切割脚本,同样适合其它很多服务日志的切割

    nginx按天进行日志切割脚本,同样适合其它很多服务日志的切割,压缩包包含shell切割脚本和使用说明,该脚本适合nginx同时也适合其他类似服务的日志切割,只要简单修改shell脚本即可,灵活多变,实用。

    250个shell脚本

    4. Nginx访问日志切割:脚本根据日期切割Nginx的访问日志,方便日志管理和分析。使用date命令获取当前时间戳,并结合重定向和条件语句,确保日志切割的正确执行。 5. 其他未列出的脚本可能涵盖更多主题,如文件操作...

    Nginx日志切割清理脚本

    利用crontab定时机制触发shell脚本,自动切割nginx的日志文件,并实现自动清理,可直接在服务器上上传使用

    shell_nginx_log:分析nginx日志

    本主题聚焦于如何利用shell脚本分析Nginx日志,并通过正则表达式提取特定URL生成sitemap文件。接下来,我们将深入探讨这一过程。 首先,了解Nginx的日志格式至关重要。Nginx默认的日志格式通常包括访问时间、客户端...

    linux下shell处理nginx日志自动生成ip黑名单

    #shell脚本处理nginx日志自动生成ip黑名单 ##统计访问量前10名的ip并写入文件 #!/bin/bash data=`date +%Y-%m-%d` #统计访问量最高的前10ip awk '{print $1}' '/PATH/'$data'.log' | sort -n |uniq -c | sort -rn | ...

    100个shell脚本合集

    在shell脚本中,可以通过监控Nginx日志来识别异常IP,例如当某个IP在短时间内访问次数超过设定阈值(如10次),则将其加入iptables防火墙的黑名单,阻止其继续访问。同时,脚本会记录被屏蔽的IP到 `/tmp/drop_ip.log...

    统计Nginx日志里前一个小时的IP数量以及IOS占比

    理解这个过程不仅有助于你执行类似的任务,还能让你深入理解shell脚本编程、日志分析以及Nginx日志格式。对于系统管理员和开发者来说,具备这些技能可以更好地监控和优化服务器性能,提高故障排查效率。

Global site tag (gtag.js) - Google Analytics