udhcpc 获取不到ip_分析Nginx日志获取IP地址的省份信息

本文介绍了如何在Linux环境中,通过分析Nginx日志获取IP地址对应的省份信息。针对日志格式`$remote_addr^A$msec^A$http_host^A$request_uri`,创建代码工程,利用IPSeeker类解析纯真IP数据库qqwry.dat,通过单例模式处理IP地址,获取省份信息。文章详细展示了如何处理不同地区的IP信息,包括内蒙古、新疆、广西、天津、北京、香港、澳门等地。
摘要由CSDN通过智能技术生成

在linux中nginx日志产生的格式是下面的配置:

$remote_addr^A$msec^A$http_host^A$request_uri

然后准备好了获取的日志数据

a792da2f70ad4b9074c87b91677fcbbe.png

创建工程编写代码:

创建执行类和方法

85978155a6887c67624f7eca106d4222.png

基本结构

3614be1d118b483ee71fc597b068f64f.png

创建一个日期处理的工具类

16cdc755f7e1879c48b95e313881ff77.png

完成简单的IP和时间存放

f9dee6bda2aa7411ea9a4d55bbcdf227.png

判断请求参数,利用?判断

7ba45c3ce4ff06b52ded9375b3d5763e.png

如果请求的日志信息拿不到 也没有必要获取其它信息了

f850481c1ab6645ce6b56e00c35cf1a1.png

将请求信息获取的处理方法

5ec7491e60116c4b1725d854808b93b6.png

网上有很多纯真IP地址数据库qqwry.dat解析的内容,我们利用下获取IP对应的地址

首先准备一个类IPSeeker(网上很多,可以直接下载下来)

8661ee888169833b9c6db0740c13542e.png

再编写一个类,继承IPSeeker,编写一个单例

8edc8e04b7e423fab4b252adfeeaf185.png

准备一个区域信息的类,注意生成get/set方法

13c3de9048e73c8c9970331856845ce4.png

QqwryIp添加解析IP地址的方法

8d5ad3c36de6d6711772abf91ff69837.png

完成基本结构

dfe707fc179f700127cc9fe8c7fb6a27.png

默认设置

a045949c528e87d217a533facdeb5c40.png

处理省份信息

ca018ca4a0769d9a7e0952d6b4d4873d.png

单独省份的处理信息,先示例一部分,简单处理

6dbfdb18e743d21673712391fec81b10.png

内蒙古

a8057e7f2862cd5a9ca6c84e9d79d65a.png

新疆、广西等地

36f4d59d4952fb59824e09fda22af35b.png

天津、北京等地

0ec963f73bed306f00ab86e9e9665335.png

香港、澳门等地和其它地区

a2f2a1180923b9b3bdb7bd6fef7d5f35.png

可以补起数据处理的部分了handlerLogText方法

a3de1bd7f88a3aa0b02299fce6a1a743.png

编写主方法,读取文件的内容主要部分

65b3d2eadfb934777201a382e3b6a859.png

执行结果,这样就获取了文本中的日志信息

61488907443edce2a1fbcdf112944937.png
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值