(19)国家知识产权局
(12)发明 专利申请
(10)申请公布号
(43)申请公布日
(21)申请 号 202210956142.X
(22)申请日 2022.08.10
(71)申请人 北京博睿宏远数据科技股份有限公
司
地址 100027 北京市东城区东中街 46号鸿
基大厦4层
(72)发明人 程捷
(74)专利代理 机构 北京品源专利代理有限公司
11332
专利代理师 王风茹
(51)Int.Cl.
G06F 9/445(2018.01)
G06F 8/71(2018.01)
(54)发明名称
Nginx请求数据采集方法、 装置、 设备及存储
介质
(57)摘要
本发明公开了一种Nginx请求数据采集方
法、 装置、 设备及存储介质。 该方法包括: 在应用
程序启动过程中, 通过探针工具中的程序识别模
块, 对应用程序进行程序识别; 若识别到应用程
序为Nginx应用程序, 则通过程序识别模块, 确定
并加载Nginx应用程序对应的Nginx探针; 通过
Nginx探针, 监听Nginx应用程序接收到的业务请
求, 并采集业务请求的第一请求数据; 在Nginx应
用程序作为反向代理服务器功能被执行时, 将业
务请求转发至后端服务器之后, 通过Nginx探针,
采集业务请求的第二请求数据; 将第一请求数据
和第二请求数据, 作为Nginx应用程序执行过程
的目标请求数据。 本发明实施例提高了采集
Nginx请求数据的丰富 性和便利性。
权利要求书2页 说明书12页 附图4页
CN 115269055 A
2022.11.01
CN 115269055 A
1.一种Ngi nx请求数据采集方法, 其特 征在于, 包括:
在应用程序启动过程中, 通过探针工具中的程序识别模块, 对所述应用程序进行程序
识别;
若识别到所述应用程序为Nginx应用程序, 则通过所述程序识别 模块, 确定并加载所述
Nginx应用程序对应的Ngi nx探针;
通过所述Nginx探针, 监听所述Nginx应用程序接收到的业务请求, 并采集所述业务请
求的第一请求数据;
在所述Nginx应用程序作为反向代理服务功能被执行时, 将所述业务请求转发至后端
服务器之后, 通过 所述Nginx探针, 采集所述 业务请求的第二请求数据;
将所述第一请求数据和所述第二请求数据, 作为所述Nginx应用程序执行过程的目标
请求数据。
2.根据权利要求1所述的方法, 其特征在于, 所述若识别到所述应用程序为Nginx应用
程序, 则通过 所述程序识别模块, 确定所述 Nginx应用程序对应的Ngi nx探针, 包括:
若识别到所述应用程序为Nginx应用程序, 则通过所述程序识别模块, 创建Nginx应用
临时配置文件;
获取所述Nginx应用程序的应用配置文件, 并将所述应用配置文件中的原始数据复制
至所述Nginx应用临时配置文件中;
在所述Nginx应用临时配置文件中添加模块加载指令, 得到Ngi nx应用目标文件;
通过所述N ginx应用目标文件中的所述模块加载指令, 确定 并加载所述N ginx应用程序
对应的Ngi nx探针。
3.根据权利要求2所述的方法, 其特征在于, 所述通过所述Nginx应用目标文件中的所
述模块加载指令, 确定并加载 所述Nginx应用程序对应的 Nginx探针, 包括:
通过所述N ginx应用目标文件中的所述模块加载指令, 确定所述N ginx应用程序对应的
待加载探针;
通过所述模块加载指令判断所述Nginx应用程序的版本信息, 与所述待加载探针的版
本信息是否一 致;
若是, 则将所述待加载探针作为所述 Nginx探针。
4.根据权利要求3所述的方法, 其特征在于, 在所述通过所述模块加载指令判断所述
Nginx应用程序的版本信息, 与所述待加载探针的版本信息是否一 致之后, 还 包括:
若所述Nginx应用程序的版本信息, 与所述待加载探针的版本信息是不一致, 则 采用所
述Nginx应用程序的版本信息, 更新所述待加载探针的版本信息;
将所述更新后的待加载探针, 作为 Nginx探针。
5.根据权利要求1 ‑4任一项所述的方法, 其特征在于, 所述第一请求数据包括请求方
法、 请求链接、 请求头、 请求 开始时间和请求 地址中的至少一种;
相应的, 所述通过所述N ginx探针, 监听所述Nginx应用程序接收到的业务请求, 并采集
所述业务请求的第一请求数据, 包括:
通过所述Nginx探针, 在Ngi nx应用程序执 行阶段的重写阶段中部署 请求回调函数;
通过所述请求回调函数, 监听所述 Nginx应用程序接收到的业 务请求;
通过所述请求回调函数, 基于所述Nginx应用程序对应的Nginx框架的数据结构, 采集权 利 要 求 书 1/2 页
2
CN 115269055 A
2所述业务请求的第一请求数据。
6.根据权利要求5所述的方法, 其特征在于, 所述第 一请求数据还包括请求结束时间和
请求响应码;
相应的, 所述通过所述N ginx探针, 监听所述Nginx应用程序接收到的业务请求, 并采集
所述业务请求的第一请求数据, 包括:
通过所述N ginx探针, 在N ginx应用程序执行阶段的日志记录阶段中部署所述请求回调
函数;
通过所述请求回调函数, 监听所述 业务请求的所述请求结束时间和所述请求响应码。
7.根据权利要求1 ‑4任一项所述的方法, 其特征在于, 所述在所述Nginx应用程序作为
反向代理服务功能被执行时, 将所述业务请求转发至后端服务器之后, 通过所述Nginx探
针, 采集所述 业务请求的第二请求数据, 包括:
在所述Nginx应用程序作为反向代理服务功能被执行时, 将所述业务请求转发至后端
服务器之后, 通过 所述Nginx探针, 识别所述后端服 务器的后端调用指令;
根据所述后端调用指令对应的调用方法, 采集所述 业务请求的第二请求数据;
其中, 所述第二请求数据包括调用协议、 请求链接和请求 开始时间。
8.一种Ngi nx请求数据采集装置, 其特 征在于, 包括:
程序识别模块, 用于在应用程序启动过程中, 通过探针工具中的程序识别模块, 对所述
应用程序进行程序识别;
Nginx探针确定模块, 用于若识别到所述应用程序为Nginx应用程序, 则通过所述程序
识别模块, 确定并加载 所述Nginx应用程序对应的Ngi nx探针;
第一请求数据采集模块, 用于通过所述Nginx探针, 监听所述Nginx应用程序接收到的
业务请求, 并采集所述 业务请求的第一请求数据;
第二请求数据采集模块, 用于在所述Nginx应用程序作 为反向代 理服务功能被执行时,
将所述业务请求转 发至后端服务器之后, 通过所述Nginx探针, 采集所述业务请求的第二请
求数据;
目标请求数据确定模块, 用于将所述第一请求数据和所述第二请求数据, 作为所述
Nginx应用程序执 行过程的目标请求数据。
9.一种电子设备, 其特 征在于, 所述电子设备包括:
至少一个处 理器; 以及
与所述至少一个处 理器通信连接的存 储器; 其中,
所述存储器存储有可被所述至少一个处理器执行的计算机程序, 所述计算机程序被所
述至少一个处理器执行, 以使所述至少一个处理器能够执行权利要求1 ‑7中任一项所述的
Nginx请求数据采集方法。
10.一种计算机可读存储介质, 其特征在于, 所述计算机可读存储介质存储有计算机指
令, 所述计算机指 令用于使处理器执行时实现权利要求 1‑7中任一项 所述的Nginx请求数据
采集方法。权 利 要 求 书 2/2 页
3
CN 115269055 A
3
专利 Nginx请求数据采集方法、装置、设备及存储介质
文档预览
中文文档
19 页
50 下载
1000 浏览
0 评论
309 收藏
3.0分
温馨提示:本文档共19页,可预览 3 页,如浏览全部内容或当前文档出现乱码,可开通会员下载原始文档
本文档由 人生无常 于 2024-03-18 16:31:09上传分享