[发明专利]分散日志的搜集方法及其系统在审
申请号: | 201611196892.2 | 申请日: | 2016-12-22 |
公开(公告)号: | CN108228662A | 公开(公告)日: | 2018-06-29 |
发明(设计)人: | 曲德君;李进岭;曹大军;杨冠军;刘昊;林寿怡 | 申请(专利权)人: | 上海新飞凡电子商务有限公司 |
主分类号: | G06F17/30 | 分类号: | G06F17/30;H04L29/08 |
代理公司: | 北京尚德技研知识产权代理事务所(普通合伙) 11378 | 代理人: | 徐乐慧;陈保胜 |
地址: | 200120 上海市浦*** | 国省代码: | 上海;31 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 日志 日志信息 应用系统 同步的 搜集 日志丢失 日志搜集 实时获取 实时监控 同步更新 云服务器 持久化 可控性 存储 监控 外部 记录 | ||
本发明公开了一种分散日志的搜集方法及其系统,至少包括以下步骤:实时获取各个应用系统中的日志,存储后并同步至云服务器;监控各应用系统中的日志,并实时监控日志信息并同步更新未完整同步的日志信息;持久化完全同步的日志信息,并记录日志的位置。本发明可以提高日志搜集效率并降低日志丢失率,也进一步减少外部依赖,增加可控性并提高性能。
技术领域
本发明涉及数据处理领域,尤其涉及一种分散日志的搜集方法及其系统。
背景技术
随时数据时代的到来,日前对于数据库的建立日益完善,而对各个领域来说,各种日志信息就开始变得重要起来,因此需要对应用服务器中分散记录的各类日志做进一步的搜集,比如web访问日志,错误日志以及服务日志等等,并在搜集后,对获得的各类日志进行初步解析并进一步持久化,以便日后的追溯以及应用。在现有的技术中,一般使用开源的flume或者logstach来进行日志搜集,但是采用以上两种方式,在客户端与服务器端的系统架构中,协议并非自控,因此搜集效率低,采集端和收集端的交互性比较差,也比较难避开Json解析,并且由于没有日志状态记录,也比较容易造成日志丢失。这两种解决方案都存在外部依赖多,可控性差以及性能差的问题。
发明内容
本发明目的是提供一种分散日志的搜集方法及其系统,提高日志搜集效率并降低日志丢失率,也进一步减少外部依赖,增加可控性并提高性能。
本发明解决技术问题采用如下技术方案:一种分散日志的搜集方法,至少包括以下步骤:
实时获取各个应用系统中的日志,存储后并同步至云服务器;
监控各应用系统中的日志,并实时监控日志信息并同步更新未完整同步的日志信息;
持久化完全同步的日志信息,并记录日志的位置。
其中,获取的日志存储在自编写缓存池,采用顺序读取数据流,并从数据流尾部确认行位置。
其中,同步后的日志持久化到Elasticsearch和/或HDFS持久化和分析库中。
一种分散日志的搜集系统,包括多个客户端以及服务器端,其特征在于,
所述的客户端至少包括:
存储模块,用于存储各种日志信息;
日志获取模块,用于读取存储模块中的各种日志;
日志监控模块,用于监控各种日志的更新状态,并将监控信息发送至日志获取模块;
所述的服务器端至少包括:
分析库,用于存储持久化的日志信息;
日志持久化单元,用于将同步更新的日志持久化于分析库中;
日志位置记录模块,用于记录日志的位置本发明具有如下有益效果:
本发明的方案通过自控协议优化传输,客户端以及服务器端都根据字符流快速解析JSON,并记录了日志位置,提高日志搜集效率并降低日志丢失率,也进一步减少外部依赖,增加可控性并提高性能。
附图说明
图1为本发明的实施例中的主线程;
图2为本发明的实施例中所述的客户端的生产线程;
图3为本发明的实施例中所述的客户端的消费者线程;
图4为本发明的实施例中所述的服务器端的主线程;
图5为本发明的实施例中所述的服务器端的消费者线程;
图6为本发明的客户端与服务器端之间的协议发送示例;
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于上海新飞凡电子商务有限公司,未经上海新飞凡电子商务有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201611196892.2/2.html,转载请声明来源钻瓜专利网。
- 上一篇:检索过程中生成提示词的方法及其装置
- 下一篇:一种分页检索方法及装置