[发明专利]日志收集方法、装置及计算机可读存储介质在审
申请号: | 201811342408.1 | 申请日: | 2018-11-12 |
公开(公告)号: | CN109471743A | 公开(公告)日: | 2019-03-15 |
发明(设计)人: | 封伟城;殷跃;向非能;蔡声群 | 申请(专利权)人: | 深圳前海微众银行股份有限公司 |
主分类号: | G06F9/54 | 分类号: | G06F9/54 |
代理公司: | 深圳市世纪恒程知识产权代理事务所 44287 | 代理人: | 胡海国;魏兰 |
地址: | 518052 广东省深圳市前海深港合作区前*** | 国省代码: | 广东;44 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 日志收集 共享内存 日志采集 日志数据 队列 计算机可读存储介质 读取 前端业务 业务进程 业务应用 日志 调用 写入 转发 采集 代理 应用 服务 | ||
本发明公开了一种日志收集方法,包括以下步骤:通过前端业务应用的业务进程调用日志采集API,将业务应用产生的日志数据写入共享内存队列;通过日志采集代理从所述共享内存队列读取日志数据,并将日志数据转发至后端日志收集服务。本发明还公开了一种日志收集装置及计算机可读存储介质。本发明基于共享内存队列采集日志,提升了日志采集的性能与效果。
技术领域
本发明涉及日志处理技术领域,尤其涉及一种日志收集方法、装置及计算机可读存储介质。
背景技术
现有技术中通常是基于磁盘文本文件间接采集日志,然后通过在业务服务器上部署的日志采集代理直接读取存储在磁盘文件上的日志文件,并对日志文件进行日志解析后发送给下游的日志收集服务。
现有基于磁盘文本文件的日志收集方式主要存在以下弊端:
(1)由于需要频繁对磁盘设备进行操作,因而可能会影响业务服务对磁盘的正常读写;
(2)由于磁盘本身读写性能较低,因而在业务持续高负载的情况下,日志采集代理可能会过载,进而导致业务日志丢失。
发明内容
本发明的主要目的在于提供一种日志收集方法、装置及计算机可读存储介质,旨在解决如何避免基于磁盘文本文件的日志收集方式所存在的弊端的技术问题。
为实现上述目的,本发明提供一种日志收集方法,所述日志收集方法包括以下步骤:
通过前端业务应用的业务进程调用日志采集API,将业务应用产生的日志数据写入共享内存队列;
通过日志采集代理从所述共享内存队列读取日志数据,并将日志数据转发至后端日志收集服务。
可选地,所述共享内存队列的头部设有用于标记所述共享内存队列中已使用的共享内存空间范围的第一偏移量参数与第二偏移量参数;
所述第一偏移量参数用于:标识当前已使用的共享内存空间尾部相对于起始地址的偏移量,以确定当前已使用的共享内存空间尾部位置;
所述第二偏移量参数用于:标识当前已使用的共享内存空间头部相对于起始地址的偏移量,以确定当前已使用的共享内存空间头部位置。
可选地,所述通过前端业务应用的业务进程调用日志采集API,将业务应用产生的日志数据写入共享内存队列包括:
通过前端业务应用的业务进程调用日志采集API,对所述共享内存队列进行CAS操作,以根据待写入的日志数据的长度,修改所述第一偏移量参数的参数值;
判断所述第一偏移量参数的参数值是否修改成功;
若是,则将业务应用产生的日志数据写入所述共享内存队列中已使用的共享内存空间尾部。
可选地,所述通过日志采集代理从所述共享内存队列读取日志数据,并将日志数据转发至后端日志收集服务包括:
通过日志采集代理从所述共享内存队列中已使用的共享内存空间头部拷贝日志数据;
根据拷贝的日志数据的长度,修改所述第二偏移量参数的参数值;
将拷贝的日志数据转发至后端日志收集服务。
可选地,所述通过日志采集代理从所述共享内存队列读取日志数据,并将日志数据转发至后端日志收集服务包括:
通过日志采集代理的代理进程,从所述共享内存队列读取日志数据;
根据日志数据的类型,将读取的日志数据传输至对应的转发进程;
通过转发进程将日志数据转发至后端日志收集服务,其中,所述转发进程采用微线程方式转发日志数据。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于深圳前海微众银行股份有限公司,未经深圳前海微众银行股份有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201811342408.1/2.html,转载请声明来源钻瓜专利网。