Linux实用命令分析nginx系统日志文件

一、背景介绍

对Web服务器的access.log日志进行分析至关重要,主要原因包括 识别攻击行为:检测SQL注入、XSS、暴力破解、扫描器等攻击尝试

异常访问发现:发现异常IP、高频请求、非常规时间访问等可疑行为 DDoS识别:通过请求频率分析识别潜在攻击流量

响应时间分析:找出响应缓慢的页面或API接口 流量热点识别:了解哪些资源最受欢迎,优化资源配置

错误诊断:通过HTTP状态码(如500、404)快速定位问题 带宽消耗分析:识别大文件下载或异常流量消耗

用户分布:了解访客地域、设备、浏览器分布 访问路径:分析用户在网站中的浏览路径

通过系统化的日志分析,不仅可以提升网站安全性和性能,还能获得宝贵的业务洞察,支持数据驱动的决策制定。

二、IP访问前十追踪

bash 复制代码
awk '{print $1}' access.log awk | sort | uniq -c | sort -nr | head -n 10

三、接口请求方式前三排名

bash 复制代码
awk '{print $6}' access.log awk | sort | uniq -c | sort -nr | head -n 3

四、不同时间段访问记录排名

bash 复制代码
awk '{split($4,t,":"); s=t[2]*3600+t[3]*60+t[4]; 
     if(s<32400) p="00:00:00-09:00:00";
     else if(s<43200) p="09:00:00-12:00:00";
     else if(s<64800) p="12:00:00-18:00:00";
     else p="18:00:00-00:00:00";
     a[p]++}
     END{for(i in a) print i, a[i] | "sort -k2rn"}' access.log

五、请求最多的接口排名前十

bash 复制代码
awk '{print $7}' access.log awk | sort | uniq -c | sort -nr | head -n 10
相关推荐
风曦Kisaki15 分钟前
# Linux Shell 编程入门 Day02:条件测试、if 判断、循环与随机数
linux·运维·chrome
木雷坞23 分钟前
视觉算法环境 Docker 镜像拉取失败排查
运维·人工智能·docker·容器
郝亚军24 分钟前
ubuntu 22.04如何安装libmodbus
运维·服务器·ubuntu
李日灐29 分钟前
< 6 > Linux 自动化构建工具:makefile 详解 + 进度条实战小项目
linux·运维·服务器·后端·自动化·进度条·makefile
JZC_xiaozhong41 分钟前
跨系统审批自动化怎么做?从采购到销售合同的完整方案
大数据·运维·自动化·流程自动化·数据集成与应用集成·业务流程管理·异构数据集成
嵌入式×边缘AI:打怪升级日志1 小时前
嵌入式Linux开发:开源组件、第三方库与许可证详解
linux
计算机安禾1 小时前
【Linux从入门到精通】第34篇:搭建FTP与Samba——跨平台文件共享解决方案
linux·运维·服务器
乌恩大侠1 小时前
【AI-RAN】在空ubuntu服务器安装环境和生成TV,高达430G文件
服务器·人工智能·ubuntu·fpga开发·o-ru
日取其半万世不竭1 小时前
用 Netdata 实时监控服务器,比 Prometheus + Grafana 轻量得多
linux·服务器·网络·系统架构·负载均衡·zabbix·grafana
jamon_tan1 小时前
Linux下cmake构建方法
linux