现有一段apache的日志,需要从日志中提取出访问量最大的IP。使用shell实现。
日志如下(只是举例,故数据量较小):
$ more aa.txt
127.0.0.1 - frank [10/Oct/2000:13:55:36 -0700] "GET /apache_pb.gif HTTP/1.0" 200 2326
192.168.1.100 - frank [10/Oct/2000:13:55:36 -0700] "GET /apache_pb.gif HTTP/1.0" 200 2326
192.168.1.100 - frank [10/Oct/2000:13:55:36 -0700] "GET /apache_pb.gif HTTP/1.0" 200 2326
192.168.1.100 - frank [10/Oct/2000:13:55:36 -0700] "GET /apache_pb.gif HTTP/1.0" 200 2326
1.要提取访问量最大的IP,需要先从日志中把IP段提取出来。
$ cat aa.txt |awk -F " " '{print $1}'
127.0.0.1
192.168.1.100
192.168.1.100
192.168.1.100
(PS,此处也可以用cut命令实现。
$ cut -d " " -f 1 aa.txt
127.0.0.1
192.168.1.100
192.168.1.100
192.168.1.100)
2.对IP进行统计,看各IP出现过多少次
$ cat aa.txt |awk -F " " '{print $1}' |uniq -c
1 127.0.0.1
3 192.168.1.100
(PS:wc -l也可以对行数统计,但统计的是整体的,所有行数。不会分类统计)
3.按IP出现次数从大到小排列
$ cat aa.txt |awk -F " " '{print $1}' |uniq -c |sort -r
3 192.168.1.100
1 127.0.0.1
4.再次提取出IP段
$ cat aa.txt |awk -F " " '{print $1}' |uniq -c |sort -r |awk '{print $2}'
192.168.1.100
127.0.0.1
5.选择第一行
$ cat aa.txt |awk -F " " '{print $1}' |uniq -c |sort -r |awk '{print $2}' |head -1
192.168.1.100
分享到:
相关推荐
### SSH与Apache日志分析详解 #### 一、概述 在运维工作中,日志分析是一项重要的任务,通过分析系统产生的各种日志文件可以帮助我们更好地理解系统的运行状况,及时发现潜在的安全威胁并采取措施应对。本文将详细...
本篇文章将介绍如何使用Shell脚本结合nali工具来分析Apache日志中的IP地址,以确定这些IP所在的地理位置。 首先,我们需要安装nali工具。nali是一个小巧的命令行工具,它可以快速地查询一个IP地址并返回其所在国家...
使用 SLB 后 Nginx、Apache 获取真实 IP 在使用 SLB(Server Load Balancer)后,如何获取真实 IP 是一个常见的问题。SLB 的作用是将用户请求分发到多个服务器上,以提高网站的负载能力和可用性。但是,在 SLB 后,...
Apache日志是记录Web服务器活动的重要工具,包含了各种关于客户端请求和服务器响应的信息。了解如何高效地分析和处理Apache日志对于监控服务器性能、识别潜在问题以及优化网站配置至关重要。以下是一些Apache日志...
使用`awk`命令可以提取日志中的IP地址,`sort`进行排序,`uniq -c`统计每个IP出现的次数,再用`sort -nr`按次数降序排列,最后`head -n 10`获取前10个。例如: ``` awk '{print $1}' access_log | sort | uniq -c...
总结来说,Apache访问日志的配置与使用主要包括选择合适的日志格式,定义日志文件位置,并在配置文件中进行相应的设置。通过对日志的分析,我们可以深入了解网站的运行状态,以便做出相应的调整和优化。
1. **查看IP**:使用`cat`命令配合`awk`提取日志中的IP地址。例如,`cat access_log | awk '{print $1}'`将打印出所有IP地址。 2. **IP排序**:在提取IP地址后,通过`sort`命令对其进行排序。如`cat access_log | ...
Cat,全称Cloud Application Tracker,是一款开源的应用性能监控系统,尤其在分布式系统中,它能够提供日志收集、交易监控、性能统计等功能,帮助企业更好地管理和维护复杂的IT环境。本文将围绕Cat监控的配置展开,...
Apache日志文件是服务器运营和故障排查的重要工具,它们提供了关于服务器访问情况的详细信息。本文将深入解析Apache日志文件的结构,并介绍一些实用的日志分析命令。 首先,Apache日志主要分为两种类型:访问日志...
本文详细介绍了如何利用Linux命令行工具进行Apache日志分析的方法,包括基本的日志查询、排序、统计以及更高级的分析技术。通过这些工具和技术,我们可以更好地监控和管理我们的服务器,确保系统的稳定性和安全性。...
4. **检查特定IP的行为**:例如,要了解IP地址为“122.102.7.212”在某一天的活动详情,可以使用`cat access_log | grep "20/Oct/2008:00" | grep "122.102.7.212" | awk '{print $8}' | sort | uniq -c | sort -nr ...
### Zabbix监控Apache知识点 #### 一、Zabbix与Apache简介 - **Zabbix**:一个基于开源...通过以上详细的步骤和说明,可以帮助新手更好地理解和掌握如何使用Zabbix来监控Apache服务,从而提高系统的稳定性和可维护性。
### Linux下统计Apache站点IP访问量的Shell脚本详解 #### 概述 在Linux环境中,经常需要对Apache服务器的日志文件进行分析,以便更好地理解网站的访问模式、用户行为等信息。通过编写Shell脚本来统计Apache站点的...
1. **访问统计**:从Apache日志中,我们可以收集到关于网站访问的详细信息,如访问次数、唯一访客数、最常访问的页面、访问时间分布、来源IP等。这有助于评估网站的流量和用户行为。 2. **错误分析**:Apache日志还...
"Catfish(鲶鱼) Blog v4.0.0.zip" 是一个包含源代码的压缩包,主要用于网站建设和毕业设计。这个版本可能是这个博客系统的最新迭代,版本号为4.0.0,暗示它可能包含了多项改进和新功能。让我们深入探讨一下这个...
使用 awk 命令可以快速统计有多少个 IP 访问服务器。命令:`awk '{print $1}' log_file|sort|uniq|wc -l` 这条命令将 log_file 文件中的每一行数据都输出到标准输出,然后使用 sort 和 uniq 命令对输出结果进行排序...
为了控制日志文件的大小,可以使用`rotatelogs`工具,它是Apache HTTP服务器的一部分,或者使用其他如`logrotate`这样的系统服务。`rotatelogs`可以根据时间间隔自动滚动日志,而`logrotate`则允许你基于时间、文件...
标题 "BASH-log_nginx:httpd 日志的简单解析器(nginxapache)" 指向的是一个使用 BASH shell 脚本解析 HTTP 服务器日志的工具,特别是针对 nginx 和 apache 这两种广泛使用的 web 服务器。这个脚本可能包含了一些...
本篇文章将详细讲解如何在CentOS7.4环境中使用Rsyslog、LogAnalyzer以及MariaDB来搭建一套高效、稳定且易于管理的日志服务器。这一方案不仅适用于集中管理和分析来自多台服务器的日志数据,同时也能够为系统管理员...