自定义Nginx日志格式获取IP地址的省市份信息

Posted 那山的狐狸

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了自定义Nginx日志格式获取IP地址的省市份信息相关的知识,希望对你有一定的参考价值。

注:图片如果损坏,点击文章链接:
https://www.toutiao.com/i6806672112477012493/

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

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

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

技术图片

创建工程编写代码:

创建执行类和方法

技术图片

基本结构

技术图片

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

技术图片

完成简单的IP和时间存放

技术图片

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

技术图片

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

技术图片

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

技术图片

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

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

技术图片

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

技术图片

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

技术图片

QqwryIp添加解析IP地址的方法

技术图片

完成基本结构

技术图片

默认设置

技术图片

处理省份信息

技术图片

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

技术图片

内蒙古

技术图片

新疆、广西等地

技术图片

天津、北京等地

技术图片

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

技术图片

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

技术图片

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

技术图片

 

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

技术图片

 

以上是关于自定义Nginx日志格式获取IP地址的省市份信息的主要内容,如果未能解决你的问题,请参考以下文章

PHP常用的自定义函数

linux十二周三次课 (4月25日)笔记

Nginx - 学习笔记 - 自定义日志输出格式

nginx日志格式字段

Nginx日志

nginx自定义日志格式