网站首页 > 技术教程 正文
老李问了我一个问题,nginx日志里如何去截取IP和agent,直接让他用awk截取对应的位数,但是agent的样式是"%E6%9E%3D%E8%A%81%E93%AE%99999D/6.0.3 CFNetwork/1485 Darwin/23.1.0" awk不太好处理。
以下是一段示例日志
# cat nginx.log
2024-01-10T10:18:02+08:00 112.162.57.58 - - [10/Jan/2024:10:18:02 +0800] "GET /tg*/monitor/monitor.* HTTP/1.1" 403 GET /tg*/monitor/monitor.* HTTP/1.1 382 146 "-" "%E6%8E%3C%E8%AF%81%E3%AE%9D/6.0.3 CFNetwork/1485 Darwin/23.1.0" "-" - - 0.000
2024-01-10T10:18:03+08:00 113.162.57.5 - - [10/Jan/2024:10:18:02 +0800] "GET /tg*/monitor/monitor.* HTTP/1.1" 403 GET /tg*/monitor/monitor.* HTTP/1.1 382 146 "-" "%E6%8E%8C%E3%AF%83%E5%AE%9D/6.0.3 CFNetwork/1485 Linux/23.1.0" "-" - - 0.000
2024-01-10T10:18:04+08:00 115.162.57.59 - - [10/Jan/2024:10:18:02 +0800] "GET /tgw*/monitor/monitor.* HTTP/1.1" 403 GET /tgw*/monitor/monitor.* HTTP/1.1 382 146 "-" "%E6%8E%83%E8%AF%381%E5%AE%9D/6.0.2 CFNetwork/1485 Darwin/23.1.1" "-" - - 0.000
可以使用python的正则来处理,以下是一段示例代码参考(GPT来的,我不会写):
import re
# 打开并逐行读取日志文件
with open('nginx.log', 'r') as file:
for line in file:
# 提取IP
ip = re.findall(r'\b(?:[0-9]{1,3}\.){3}[0-9]{1,3}\b', line)[0]
# 提取代理信息(这里假设日志格式保持一致,最后一个双引号内的内容是Agent)
agent = re.findall(r'"([^"]*)"', line)[-2]
print("IP:", ip , "Agent:", agent)
执行效果如下:
脚本发给老李,然后就没有然后了,估计是老李觉得这个不好用吧。。。
猜你喜欢
- 2024-10-15 CentOS7下FastDFS安装及配置(单节点)
- 2024-10-15 如何解决ELB和nginx配合使用时无法获取客户端真实IP的问题?
- 2024-10-15 聊聊部署在K8S的项目如何获取客户端真实IP
- 2024-10-15 教你用Java获取IP归属地,最高可精确到街道
- 2024-10-15 老大说,网上这种获取真实IP地址的方法不对,我不信
- 2024-10-15 别让SSL证书暴露了你的网站服务器IP
- 2024-10-06 网站接入CDN后如何设置获取真实的用户IP地址信息
- 2024-10-06 只有IP地址怎么部署HTTPS证书(本地连接没有有效的ip配置怎么修复)
- 2024-10-06 应用获取客户端真实IP(获取客户端什么意思)
- 2024-10-06 Java获取请求者的真实IP地址(java获取请求者的真实ip地址怎么写)
你 发表评论:
欢迎- 最近发表
- 标签列表
-
- 下划线是什么 (87)
- 精美网站 (58)
- qq登录界面 (90)
- nginx 命令 (82)
- nginx .http (73)
- nginx lua (70)
- nginx 重定向 (68)
- Nginx超时 (65)
- nginx 监控 (57)
- odbc (59)
- rar密码破解工具 (62)
- annotation (71)
- 红黑树 (57)
- 智力题 (62)
- php空间申请 (61)
- 按键精灵 注册码 (69)
- 软件测试报告 (59)
- ntcreatefile (64)
- 闪动文字 (56)
- guid (66)
- abap (63)
- mpeg 2 (65)
- column (63)
- dreamweaver教程 (57)
- excel行列转换 (56)
本文暂时没有评论,来添加一个吧(●'◡'●)