CN109542733B - 一种高可靠的实时日志收集及可视化检索方法 - Google Patents

一种高可靠的实时日志收集及可视化检索方法 Download PDF

Info

Publication number
CN109542733B
CN109542733B CN201811479203.8A CN201811479203A CN109542733B CN 109542733 B CN109542733 B CN 109542733B CN 201811479203 A CN201811479203 A CN 201811479203A CN 109542733 B CN109542733 B CN 109542733B
Authority
CN
China
Prior art keywords
log
data
file
real
time
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
CN201811479203.8A
Other languages
English (en)
Other versions
CN109542733A (zh
Inventor
史飞悦
房鹏展
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Focus Technology Co Ltd
Original Assignee
Focus Technology Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Focus Technology Co Ltd filed Critical Focus Technology Co Ltd
Priority to CN201811479203.8A priority Critical patent/CN109542733B/zh
Publication of CN109542733A publication Critical patent/CN109542733A/zh
Application granted granted Critical
Publication of CN109542733B publication Critical patent/CN109542733B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/30Monitoring
    • G06F11/3065Monitoring arrangements determined by the means or processing involved in reporting the monitored data
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/30Monitoring
    • G06F11/3065Monitoring arrangements determined by the means or processing involved in reporting the monitored data
    • G06F11/3072Monitoring arrangements determined by the means or processing involved in reporting the monitored data where the reporting involves data filtering, e.g. pattern matching, time or event triggered, adaptive or policy-based reporting
    • G06F11/3082Monitoring arrangements determined by the means or processing involved in reporting the monitored data where the reporting involves data filtering, e.g. pattern matching, time or event triggered, adaptive or policy-based reporting the data filtering being achieved by aggregating or compressing the monitored data
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/30Monitoring
    • G06F11/3089Monitoring arrangements determined by the means or processing involved in sensing the monitored data, e.g. interfaces, connectors, sensors, probes, agents
    • G06F11/3093Configuration details thereof, e.g. installation, enabling, spatial arrangement of the probes

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Quality & Reliability (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Debugging And Monitoring (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
  • Storage Device Security (AREA)

Abstract

高可靠的实时日志收集及可视化检索方法,1)设置实时日志收集架构,设有实时日志收集,日志数据加密传输,日志数据完整性检查,缺失告警,检查结果可视化系统架构;在目标日志服务器上部署Flume客户端及自定义Flume插件、Kafka集群、HDFS分布式文件系统;通过配置Flume配置文件,进行多线程的目标日志读取,并将读取的数据传输至Kafka集群;Kafka集群通过创建的分区与Kafka集群的Topic归类进行日志数据的缓存;2)日志数据完整性检查流程与算法步骤:通过自定义Flume插件在传输日志数据时,对已收集的日志文件发送检查消息,使Storm集群在对落地日志数据时,对HDFS存储的日志数据进行完整性检查;3)切片日志文件删除与缺失数据重传流程与算法步骤。

Description

一种高可靠的实时日志收集及可视化检索方法
技术领域
本发明涉及实时日志收集与检索领域,具体而言涉及一种高可靠的实时日志收集与可视化检索方法。
背景技术
一般大型系统是一个分布式部署的架构,不同的服务模块部署在不同的服务器上,服务产生的日志(应用日志、访问日志、安全日志等)因此也就散落在各服务器上。直接在日志服务器上通过grep、awk、wc命令可以实现日志信息的检索和统计。但在规模较大的场景中(数十、上百台服务,一台服务器多种日志类型,一种类型又有多个日志文件),此方法效率低下,同时还需面临日志文件以循环覆盖方式输出,日志数据量太大如何归档、文本搜索太慢、如何多维度查询分析统计等问题。常见解决思路是建立集中式日志收集系统,将所有节点上的日志统一收集,存储,然后再进行分析。
一个完整的集中式日志系统,需要包含以下几个主要特点:收集,能够完整地采集多种来源的日志数据;传输,能够安全、稳定、可靠地将日志数据实时传输到中央系统;存储,持久化存储日志数据;分析检索,支持自定义UI查询、分析,并快速得到结果。
目前通过现有技术Flume、Kafka、Storm、HDFS可以实现实时日志的集中式收集。Flume是一个分布式、可靠和高可用的海量日志采集、聚合和传输的日志收集系统,已支持多种数据发送方(包括Kafka),并且支持自定义编写插件实现日志的处理及发送。Kafka是一种高吞吐量的分布式发布订阅消息系统,通过消息的生产者与消费者实现消息数据的扭转。Storm是一个分布式的、容错的实时计算系统,通过“流处理”实时地处理消息。而HDFS是Hadoop的分布式文件系统,能提供高吞吐量的数据访问,非常适合大规模数据集上的应用。
ELK(Elasticsearch、Logstash、Kibana)可以实现以Web展现形式对集中的实时日志可视化查询、检索、分析。其中Elasticsearch是一个实时的分布式搜索分析引擎,它被用作全文检索、结构化搜索、分析。Logstash是一款强大的数据处理工具,它可以实现数据传输,格式处理,格式化输出。而Kibana是一个基于Web的图形界面,用于可视化地检索、分析、统计存储在Elasticsearch中的数据。
但设计一套综合现有技术,能够建立实时日志收集及检索平台,实现实时日志完整地收集,安全、稳定、可靠地传输,持久化存储,并能实时地可视化查询仍是一个值得解决的问题。
发明内容
本发明目的是,在以上现有技术背景下,设计一套实时日志收集及检索平台,实现实时日志完整地收集,安全、稳定、可靠地传输,持久化存储,并能实时地可视化查询、检索、分析。
为达成上述目的,本发明所采用的技术方案如下:高可靠的实时日志收集及可视化检索方法,步骤如下:
步骤1设置实时日志收集架构
设置通用的实时日志收集架构,确保日志收集完整:设有实时日志收集,日志数据加密传输,日志数据完整性检查,缺失告警,检查结果可视化系统架构;在目标日志服务器上部署Flume客户端及自定义Flume插件、Kafka集群、Storm集群、HDFS分布式文件系统;通过配置Flume配置文件,进行多线程的目标日志读取,并将读取的数据传输至Kafka集群;Kafka集群通过创建的分区与Kafka集群的Topic归类进行日志数据的缓存,并通过配置的自动清理机制清除过期的日志数据,避免Kafka消息堆积引起磁盘存储问题;Storm集群通过提交日志数据处理Topology任务,进行Kafka消息流式消费,并写入HDFS分布式文件系统,在过程中进行日志数据完整性检查,并将检查结果写入数据库中;最后通过开源调度工具Pentaho,编写定时调度作业,进行检查结果的处理,按制定的告警策略对日志文件完整性检查失败的结果进行邮件、短信的通知,并通过报表工具QlikView,开发报表实现准实时的检查结果展示
设有日志数据压缩、加密算法模块,在Flume发送数据时,进行数据加密、压缩,并在Storm中再进行数据解压、解密还原;这样一方面保证了数据的安全性,同时可以降低数据传输所需的网络带宽,而Kafka集群在本地缓存数据时,就地加密存储,多方面确保了日志数据的安全性;
步骤2,日志数据完整性检查流程与算法步骤:通过自定义Flume插件在传输日志数据时,对已收集的日志文件发送检查消息,使Storm集群在对落地日志数据时,对HDFS存储的日志数据进行完整性检查,将检查结果入库,并且流式的向后传递检查结果消息;
步骤3,切片日志文件删除与缺失数据重传流程与算法步骤:
1)自定义Flume插件订阅Kafka数据检查Topic,解析检查结果;检查成功,则进行本地的切片日志文件清理工作,以减轻磁盘压力;
2)若检查失败,则根据缺失的日志文件名以及日志文件行号信息,重新读取缺失的日志文件,以相同的日志文件数据流向管道写入Kafka集群,并在最后添加日志文件完整性检查消息,等待步骤2中的第四步;直至日志文件检查完整或者检查次数超过设定阈值;
在步骤1至3下,日志文件数据的完整性有了保证;
步骤4,设置实时日志可视化检索架构:
设有实时日志订阅模块,实时日志解析、过滤,实时日志可视化检索系统架构;实时日志订阅模块指搭建Elasticsearch集群与Kibana,使Kibana能利用Elasticsearch的REST接口来检索存储在Elasticsearch数据;通过配置Logstash配置文件,订阅Kafka中的某一个或多个日志数据缓存的Topic,将日志数据解析、过滤后,以指定索引写入Elasticsearch;最后在Kibana Web页面通过指定的索引,自定义日志数据的实时检索、查询与分析。
步骤2中,
1)Flume在收集日志时,首先会对目标日志进行实时切片(切片策略包括按时间分钟、小时、天)得到切片的日志文件,切片的日志文件以时间格式存储为本地文件,并本地保存目标切片日志文件的偏移量,防止程序异常关闭(人为或者自身出错引起)导致再次启动时日志数据的重复或者丢失;
2)对于切片的日志文件,通过自定义Flume插件实时读取,将日志文件数据逐行写入Kafka集群,并在每一行消息头部添加日志数据附带属性;其间实时保存读取的日志文件信息(文件名,文件偏移量,当前文件行数等信息),保证再次启动时日志文件能够准确无误地继续读取;
3)自定义Flume插件定时执行任务,对需要检查的切片日志,以日志文件数据相同的数据管道向后发送日志文件数据检查消息(包括日志文件数据的文件名,日志文件数据最大行数等);
4)Storm Topology在处理日志文件数据的同时,会收到文件检查消息,对落地至HDFS的日志数据进行完整性检查,并将检查结果写入数据库,流式地将检查结果写入Kafka数据检查Topic中;
5)定时作业根据日志数据的切片日志文件的策略,对HDFS落地的日志数据以及数据库中的记录信息检查结果进行告警裁定,将需告警的信息以邮件、短信形式通知运维人员。
步骤4中,
1)Logstash在订阅日志数据时,根据日志数据在Kafka中的分区数,确定多线程数量,以达到日志数据的实时消费;
2)Logstash在解析、过滤日志数据时,首先处理解析日志消息的头部信息,提取其中的数据附带属性,并作为关键字段添加至日志消息尾部;其次,根据指定规则过滤不需要的日志数据或者垃圾数据。
有益效果:本发明的核心是日志数据完整性收集的流程与算法步骤以及如何快速检索日志数据,收集,能够完整地采集多种来源的日志数据;传输,能够安全、稳定、可靠地将日志数据实时传输到中央系统;存储,持久化存储日志数据;分析检索,支持自定义UI查询、分析,并快速得到结果。总之,本发明利于实时日志的集中式收集、管理与应用。利于实时日志完整、可靠、安全、稳定传输。本发明利于实时日志快速地可视化的检索、查询以及分析。
附图说明
图1系统整体架构。
图2日志收集插件组件图。
图3日志数据检查流程图。
图4日志缺失数据重传流程图。
具体实施方式
以下结合附图,对本发明作进一步详细说明。设计实时日志收集架构与实时日志可视化检索框架,如图1所示。
设计实时日志收集架构。设计通用的实时日志收集架构,确保日志收集完整:
设有实时日志收集,日志数据加密传输,日志数据完整性检查,缺失告警,检查结果可视化系统架构。在目标日志服务器上部署Flume客户端及Flume自定义插件,通过配置Flume配置文件,进行多线程的目标日志读取,并将读取的数据传输至Kafka集群。
设有日志数据压缩、加密算法,在Flume发送数据时,进行数据加密、压缩算法的设计,并在Storm中再进行数据解压、解密还原。这样一方面保证了数据的安全性,同时可以降低数据传输所需的网络带宽,而Kafka集群在本地缓存数据时,就以加密存储,多方面确保了日志数据的安全性。
其中,Flume部署在目标日志服务上,通过Agent1将原始日志文件读取后,根据切片策略落地至本地文件夹,生成带有时间格式的切片文件,再经过Agent2读取切片文件数据,进行压缩、加密后写入Kafka集群。Kafka集群部署在网络中心节点,将写入的日志数据根据Topic进行本地缓存,等待订阅者消费数据。Storm集群部署在大数据集群(Hadoop)中,通过提交日志数据处理Topology。
通过自定义Flume插件在传输日志数据时,对已收集的日志文件发送检查消息,促使Storm在落地日志数据时,对HDFS存储的日志数据进行完整性检查,将检查结果入库,并流式的向后传递检查结果消息。
Flume在收集日志时,首先会对目标日志进行实时切片(切片策略包括按时间分钟、小时、天),切片成以时间格式存储的本地文件,并本地保存目标文件的偏移量,防止程序异常关闭(人为或者自身出错引起)导致再次启动时日志数据的重复或者丢失。
对于切片的日志文件,通过自定义Flume插件实时读取,将日志数据逐行写入Kafka集群,并在每一行消息头部添加日志数据附带属性。其间实时保存读取的日志文件信息(文件名,文件偏移量,当前文件行数等信息),保证再次启动时日志文件能够准确无误地继续读取。
自定义Flume插件定时执行任务,对需要检查的切片日志,以日志数据相同的数据管道向后发送日志数据检查消息(日志数据文件名,日志最大行数等)。
Storm Topology在处理日志数据的同时,会收到文件检查消息,对落地至HDFS的日志数据进行完整性检查,并将检查结果写入数据库,流式地将检查结果写入Kafka数据检查Topic中。
定时作业根据日志数据切片的策略,对HDFS落地的日志数据以及检查结果库中的记录信息进行告警裁定,将需告警的信息以邮件、短信形式通知运维人员。
在本实施例中,本发明设计的日志数据收集Flume自定义插件组件结构如图2所示。
整个结构分为日志数据切片与切片数据读取两块,日志数据切片用于将原始日志以时间策略切片保存至本地,切片数据读取用于将切片的日志数据逐行封装后写入Kafka集群。各组件根据Flume官方提供的API进行自定义开发以及封装,达到精简易用的程度。
日志数据切片,根据系统时间与切片策略进行日志数据的原始拷贝,并落地成指定规则文件名的日志切片数据。本实例以按小时切片策略为例,切片后的文件名命名规则如下:yyyy-MM-dd-HH_fileMaker.log,其中fileMaker用于标识切片文件的原始文件名。日志切片组件工作流程如下:
1、MultiExec Source多线程执行各原始日志文件Tail指令,将每一行日志数据内容、系统当前时间、日志文件名封装成各个event,写入File Channel;
2、File Sink从File Channel中取出event,并根据封装的event头信息将日志数据写入指定规则的切片文件中。
切片数据读取流程如下:
1、Taildir Source实时监测多个目录下的文件,当文件增大或者新增文件时,实时增量式读取文件,并将新增的数据以一行一个event进行封装写入File Channel,同时本地记录各切片文件的偏移量。
2、Kafka Sink从File Channel中取出event,将event以指定的序列化键值方式(key-value)写入Kafka。根据策略定时构造需进行文件检查的消息,同时本地记录尚未检查的文件信息。
其中1中封装后的每一行日志数据event头信息如下:
日志数据所属切片文件全路径,数据标签(fileMaker),当前数据所属行号
比如:/focus/sample/logs/2018-03-26-9_TEST.log,1.47_test_file,119
其中2中文件检查消息的数据结构如下:
Figure BDA0001892951760000071
其中各属性含义如下:
·fileAllPath:待检查的日志切片文件全路径。
·maxLines:日志切片文件最大的行数。
·headdfKey:日志切片文件自带的唯一标识。
·upTime:日志切片文件最后更新时间,用于判定文件是否已切割完成。
·isBuilt:日志切片文件是否已构造过检查消息标识,若是则会定时移除。
·topic:日志切片文件写入Kafka的Topic名称。
从Kafka消费日志数据,根据消息的头信息,判定是日志数据还是数据检查消息,从而进行数据落地HDFS或者日志数据完整性检查流程,将检查结果写入单独部署的数据库中。Kafka集群通过创建的分区与Topic进行日志数据的缓存,并通过配置的自动清理机制清除过期的数据,避免Kafka消息堆积引起磁盘存储问题。Storm集群通过提交日志数据处理Topology,进行Kafka消息流式消费,写入HDFS分布式文件系统,在过程中进行日志数据完整性检查,并将检查结果写入QV数据库中。最后通过调度工具Pentaho,编写定时调度作业,进行检查结果的分析与处理,按制定的告警策略对日志文件完整性检查失败的结果进行邮件、短信的通知,并通过报表工具QlikView,开发报表准实时的展现检查结果。设有QV服务器并单独部署,连通数据检查结果数据库,通过编写SQL语句,将检查结果分类,分时以报表形式联动展现。告警服务属于公共平台,只需配置定时告警策略与告警消息接收者即可,达到告警阈值,系统自动发送告警消息。
ELK部署于数据应用网,Logstash与Kafka集群能够连通,Elasticsearch集群与Kibana只需能够与Logstash连通即可。通过Logstash,订阅Kafka中的某一个或多个日志Topic,将日志数据解析、过滤后,以指定索引写入Elasticsearch。最后在Kibana Web页面通过指定的索引,自定义日志数据的实时检索、查询与分析。
在本实施例中,本发明设计的日志数据检查流程图如图3所示。
日志数据检查时,解析检查消息,根据需检查的文件名,获取HDFS以此文件名结尾的所有文件;循环文件并截取每一行尾部在落地时添加的行号数据,根据最大行号数,进行匹配并标识。若存在缺失的行数,则构造需重传的日志数据信息;若检查通过则构造检查成功信息。检查信息装载后,通过Kafka bolt流入检查结果Kafka Topic中,等待订阅者消费。
自定义Flume插件订阅Kafka数据检查Topic,解析检查结果。检查成功,则进行本地的切片文件清理工作,以减轻磁盘压力;
若检查失败,则根据缺失的文件名以及文件行号信息,重新读取缺失的日志数据,以相同的数据流向管道写入Kafka集群,并在最后添加文件完整性检查消息,等待StormTopology对落地至HDFS的日志数据进行完整性检查,并将检查结果写入数据库,流式地将检查结果写入Kafka数据检查Topic中;直至文件检查完整或者检查次数超过设定阈值。
设有实时日志订阅,实时日志解析、过滤,实时日志可视化检索系统架构。搭建Elasticsearch集群与Kibana,使Kibana可以利用Elasticsearch的REST接口来检索存储在Elasticsearch数据。通过配置Logstash配置文件,订阅Kafka中的某一个或多个日志Topic,将日志数据解析、过滤后,以指定索引写入Elasticsearch。最后在Kibana Web页面通过指定的索引,自定义日志数据的实时检索、查询与分析。
Logstash在订阅日志数据时,根据日志数据在Kafka中的分区数,确定多线程数量,以达到日志数据的实时消费;
Logstash在解析、过滤日志数据时,首先处理解析日志消息的头部信息,提取其中的数据附带属性,并作为关键字段添加至日志消息尾部;其次,根据指定规则过滤不需要的日志数据或者垃圾数据。
在本实施例中,本发明设计的缺失数据重传流程图,如图4所示。
日志缺失数据重传,从Kafka中获取检查结果消息,根据消息头部信息判断是否是本机需要关注的数据检查结果,若不是,直接跳过。若为检查成功消息,则进行切片文件的清理工作,否则从本地切片数据中再次读取缺失的日志数据,通过Kafka Sink写入与缺失数据相同的Kafka Topic中,由Storm追加至HDFS对应的文件中。
在本实施例中,针对存储在Kafka集群中的日志数据,需根据每一行日志数据的头部信息,进行过滤以及处理,配置Logstash参数,关键设置如下:
Figure BDA0001892951760000091
Figure BDA0001892951760000101
其中“key_deserializer_class”与“value_deserializer_class”需要以写入的K-V序列化方法对应,“decorate_events”设置为“true”才能将Kafka消息的头部信息带出,以便在filter组件中过滤及处理。输出时需指定索引“index”,以便于在Kibana中实时检索。
以上具体实施方式所述仅为本发明的实施例而已,并不用以限制本发明,凡在本发明的精神和原则之内所作的任何修改、等同替换和改进等,均以包含在本发明的保护范围之内。

Claims (3)

1.高可靠的实时日志收集及可视化检索方法,其特征是,步骤如下:
步骤1,设置实时日志收集架构:
设置通用的实时日志收集架构,确保日志收集完整:设有实时日志收集,日志数据加密传输,日志数据完整性检查,缺失告警,检查结果可视化系统架构;在目标日志服务器上部署Flume客户端及自定义Flume插件、Kafka集群、Storm集群、HDFS分布式文件系统;通过配置Flume配置文件,进行多线程的目标日志读取,并将读取的数据传输至Kafka集群;Kafka集群通过创建的分区与Kafka集群的Topic归类进行日志数据的缓存,并通过配置的自动清理机制清除过期的日志数据,避免Kafka消息堆积引起磁盘存储问题;Storm集群通过提交日志数据处理Topology任务,进行Kafka消息流式消费,并写入HDFS分布式文件系统,在过程中进行日志数据完整性检查,并将检查结果写入数据库中;最后通过开源调度工具Pentaho,编写定时调度作业,进行检查结果的处理,按制定的告警策略对日志文件完整性检查失败的结果进行邮件、短信的通知,并通过报表工具QlikView,开发报表实现准实时的检查结果展示;
设有日志数据压缩、加密算法模块,在Flume发送数据时,进行数据加密、压缩,并在Storm中再进行数据解压、解密还原;这样一方面保证了数据的安全性,同时可以降低数据传输所需的网络带宽,而Kafka集群在本地缓存数据时,就地加密存储,多方面确保了日志数据的安全性;
步骤2,日志数据完整性检查流程与算法步骤:通过自定义Flume插件在传输日志数据时,对已收集的日志文件发送检查消息,使Storm集群落地至HDFS的日志数据进行完整性检查,将检查结果入库,并且流式的向后传递检查结果消息;
步骤3,切片日志文件删除与缺失数据重传流程与算法步骤:
1)自定义Flume插件订阅Kafka数据检查Topic,解析检查结果;检查成功,则进行本地的切片日志文件清理工作,以减轻磁盘压力;
2)若检查失败,则根据缺失的日志文件名以及日志文件行号信息,重新读取缺失的日志文件,以相同的日志文件数据流向管道写入Kafka集群,并在最后添加日志文件完整性检查消息,等待步骤2;直至日志文件检查完整或者检查次数超过设定阈值;
在步骤1至3下,日志文件数据的完整性有了保证;
步骤4,设置实时日志可视化检索架构:
设有实时日志订阅模块,实时日志解析、过滤,实时日志可视化检索系统架构;实时日志订阅模块指搭建Elasticsearch集群与Kibana,使Kibana能利用Elasticsearch的REST接口来检索存储在Elasticsearch数据;通过配置Logstash配置文件,订阅Kafka中的某一个或多个日志数据缓存的Topic,将日志数据解析、过滤后,以指定索引写入Elasticsearch;最后在Kibana Web页面通过指定的索引,自定义日志数据的实时检索、查询与分析。
2.根据权利要求1所述的高可靠的实时日志收集及可视化检索方法,其特征是,步骤2中 ,
1)Flume在收集日志时,首先会对目标日志进行实时切片,切片策略包括按时间分钟、小时、天得到切片的日志文件,切片的日志文件以时间格式存储为本地文件,并本地保存目标切片日志文件的偏移量,防止程序异常关闭,异常关闭指人为或者自身出错引起导致再次启动时日志数据的重复或者丢失;
2)对于切片的日志文件,通过自定义Flume插件实时读取,将日志文件数据逐行写入Kafka集群,并在每一行消息头部添加日志数据附带属性;其间实时保存读取的日志文件信息,包括文件名、文件偏移量、当前文件行数信息,保证再次启动时日志文件能够准确无误地继续读取;
3)自定义Flume插件定时执行任务,对需要检查的切片日志,以日志文件数据相同的数据管道向后发送日志文件数据检查消息,包括日志文件数据的文件名,日志文件数据最大行数;
4)Storm Topology在处理日志文件数据的同时,会收到文件检查消息,对落地至HDFS的日志数据进行完整性检查,并将检查结果写入数据库,流式地将检查结果写入Kafka数据检查Topic中;
5)定时作业根据日志数据的切片日志文件的策略,对HDFS落地的日志数据以及数据库中的记录信息检查结果进行告警裁定,将需告警的信息以邮件、短信形式通知运维人员。
3.根据权利要求1所述的高可靠的实时日志收集及可视化检索方法,其特征是,步骤4中,
1)Logstash在订阅日志数据时,根据日志数据在Kafka中的分区数,确定多线程数量,以达到日志数据的实时消费;
2)Logstash在解析、过滤日志数据时,首先处理解析日志消息的头部信息,提取其中的数据附带属性,并作为关键字段添加至日志消息尾部;其次,根据指定规则过滤不需要的日志数据或者垃圾数据。
CN201811479203.8A 2018-12-05 2018-12-05 一种高可靠的实时日志收集及可视化检索方法 Active CN109542733B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201811479203.8A CN109542733B (zh) 2018-12-05 2018-12-05 一种高可靠的实时日志收集及可视化检索方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201811479203.8A CN109542733B (zh) 2018-12-05 2018-12-05 一种高可靠的实时日志收集及可视化检索方法

Publications (2)

Publication Number Publication Date
CN109542733A CN109542733A (zh) 2019-03-29
CN109542733B true CN109542733B (zh) 2020-05-01

Family

ID=65852900

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201811479203.8A Active CN109542733B (zh) 2018-12-05 2018-12-05 一种高可靠的实时日志收集及可视化检索方法

Country Status (1)

Country Link
CN (1) CN109542733B (zh)

Families Citing this family (57)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111953713A (zh) * 2019-05-14 2020-11-17 上海博泰悦臻网络技术服务有限公司 Kafka数据展示方法及装置、计算机可读存储介质和终端
CN110347716B (zh) * 2019-05-27 2024-04-02 中国平安人寿保险股份有限公司 日志数据处理方法、装置、终端设备及存储介质
CN110245158A (zh) * 2019-06-10 2019-09-17 上海理想信息产业(集团)有限公司 一种基于Flink流计算技术的多源异构数据实时处理系统及方法
CN110430232A (zh) * 2019-06-27 2019-11-08 苏州浪潮智能科技有限公司 一种可视化的flume配置运行方法及装置
CN110489464B (zh) * 2019-07-02 2022-05-31 北京邮电大学 探索式图融合可视化方法和装置
CN110223520A (zh) * 2019-07-16 2019-09-10 网链科技集团有限公司 电动自行车超速识别方法
CN110288838A (zh) * 2019-07-19 2019-09-27 网链科技集团有限公司 电动自行车闯红灯识别系统及方法
CN110515695A (zh) * 2019-07-26 2019-11-29 济南浪潮数据技术有限公司 一种日志数据处理方法及系统
CN110716913B (zh) * 2019-07-31 2022-12-20 安徽四创电子股份有限公司 一种Kafka与Elasticsearch数据库数据的互相迁移方法
CN110647407A (zh) * 2019-08-30 2020-01-03 北京浪潮数据技术有限公司 一种数据配置方法和系统
CN110716909A (zh) * 2019-09-29 2020-01-21 广州餐道信息科技有限公司 一种基于数据分析管理的商用系统
CN110795412B (zh) * 2019-10-10 2023-01-20 北京达佳互联信息技术有限公司 日志信息的处理方法、装置及存储介质
CN110889068A (zh) * 2019-10-23 2020-03-17 北京达佳互联信息技术有限公司 一种辅助查阅日志的方法、装置及电子设备
CN110881030A (zh) * 2019-10-25 2020-03-13 北京明朝万达科技股份有限公司 基于logstash的记录web服务管理员操作日志的方法及装置
CN110806966A (zh) * 2019-11-08 2020-02-18 哈工大机器人湖州国际创新研究院 日志管理方法、装置、电子设备及计算机存储介质
CN111046099A (zh) * 2019-11-12 2020-04-21 上海麦克风文化传媒有限公司 一种热数据高性能存储架构
CN110990218B (zh) * 2019-11-22 2023-12-26 深圳前海环融联易信息科技服务有限公司 基于海量日志的可视化与告警的方法、装置及计算机设备
CN110990246B (zh) * 2019-12-05 2024-01-09 无锡华云数据技术服务有限公司 大规模集群部署交付日志的跟踪处理方法及装置
CN111104302A (zh) * 2019-12-06 2020-05-05 紫光云(南京)数字技术有限公司 一种用于集群系统的改进elk日志分析方法
CN111162938A (zh) * 2019-12-24 2020-05-15 泰康保险集团股份有限公司 数据处理系统及方法
CN111221831B (zh) * 2019-12-26 2024-03-29 杭州顺网科技股份有限公司 一种对广告效果数据实时处理的计算系统
CN111209364A (zh) * 2019-12-31 2020-05-29 武汉中海庭数据技术有限公司 一种基于众包地图更新的海量数据接入处理方法及系统
CN111209258A (zh) * 2019-12-31 2020-05-29 航天信息股份有限公司 税务端系统日志实时分析方法、设备、介质及系统
CN111258979B (zh) * 2020-01-16 2022-04-15 山东大学 一种云防护日志系统及其工作方法
CN113268530A (zh) * 2020-02-17 2021-08-17 浙江大搜车软件技术有限公司 海量异构数据采集方法、系统、计算机设备和存储介质
CN111427903B (zh) * 2020-03-27 2023-04-21 四川虹美智能科技有限公司 日志信息采集方法及装置
CN111563017B (zh) * 2020-04-28 2023-05-16 北京字节跳动网络技术有限公司 数据处理方法及装置
CN111654412B (zh) * 2020-05-15 2022-02-01 华青融天(北京)软件股份有限公司 数据采集传输方法、装置和电子设备
CN111695126A (zh) * 2020-05-28 2020-09-22 武汉中海庭数据技术有限公司 一种众包数据解密方法、装置、电子设备及存储介质
CN111782475A (zh) * 2020-06-30 2020-10-16 北京思特奇信息技术股份有限公司 一种基于命令模式的分布式日志访问方法及系统
CN111858475A (zh) * 2020-07-14 2020-10-30 深圳前海移联科技有限公司 一种通用的分布式日志上下文检索系统及方法
CN112100197B (zh) * 2020-07-31 2022-10-28 紫光云(南京)数字技术有限公司 基于Elasticsearch的准实时日志数据分析与统计方法
CN111858536A (zh) * 2020-08-03 2020-10-30 聚好看科技股份有限公司 一种业务日志传输方法及终端
CN112087490A (zh) * 2020-08-07 2020-12-15 上海绊糖信息科技有限公司 一种高性能移动端应用软件日志收集系统
CN111723160B (zh) * 2020-08-24 2021-03-23 国网浙江省电力有限公司 一种多源异构增量数据同步方法及系统
CN113032344B (zh) * 2020-08-25 2021-08-27 广州锦行网络科技有限公司 一种远程登录日志记录的清理方法
CN113760564A (zh) * 2020-10-20 2021-12-07 北京沃东天骏信息技术有限公司 数据处理方法、装置和系统
CN112491965A (zh) * 2020-11-03 2021-03-12 南方电网数字电网研究院有限公司 一种基于Kafka及Netty框架的监控数据传输方法
CN112685370B (zh) * 2020-12-17 2022-08-05 福建新大陆软件工程有限公司 一种日志采集方法、装置、设备和介质
CN112527801A (zh) * 2020-12-21 2021-03-19 中国人民银行清算总中心 关系型数据库与大数据系统间的数据同步方法及系统
CN112685214B (zh) * 2021-01-15 2023-07-14 浪潮软件科技有限公司 一种通过日志收集分析中毒机器并进行告警的方法
CN113271220B (zh) * 2021-03-30 2022-10-14 国家计算机网络与信息安全管理中心 一种基于配置文件和日志文件的跨组件数据流向审计方法和系统
CN113256889B (zh) * 2021-05-11 2024-02-27 孙艳露 一种基于物联网的雨伞传递装置及其传递方法
CN113377726A (zh) * 2021-06-02 2021-09-10 浪潮软件股份有限公司 一种高可靠性分布式海量数据传输方法及工具
CN113411382B (zh) * 2021-06-07 2022-07-12 广发银行股份有限公司 一种基于网络设备f5的实时数据采集系统及方法
CN113505041A (zh) * 2021-07-21 2021-10-15 浪潮卓数大数据产业发展有限公司 基于用户访问行为分析的爬虫识别方法及系统
CN113778810A (zh) * 2021-09-27 2021-12-10 杭州安恒信息技术股份有限公司 一种日志收集方法、装置及系统
CN114244832A (zh) * 2021-12-16 2022-03-25 广发基金管理有限公司 一种自定义Prometheus收集日志信息指标的方法和系统
CN114238018B (zh) * 2021-12-17 2023-03-24 天翼爱音乐文化科技有限公司 日志采集文件完整性检测方法、系统、装置及存储介质
CN114495378A (zh) * 2022-01-21 2022-05-13 浪潮卓数大数据产业发展有限公司 基于atm机的取现信息获取及处理方法及系统
CN115098366A (zh) * 2022-06-21 2022-09-23 平安普惠企业管理有限公司 测试环境任务调度处理方法、装置、设备及存储介质
CN115168030B (zh) * 2022-06-24 2023-10-20 天翼爱音乐文化科技有限公司 一种动态调控的日志采集、处理方法、装置及存储介质
CN115221134B (zh) * 2022-07-18 2023-05-05 陕西天行健车联网信息技术有限公司 一种车联网数据的分布式实时压缩方法、装置及存储介质
CN115604290B (zh) * 2022-12-13 2023-03-24 云账户技术(天津)有限公司 Kafka消息执行方法、装置、设备及存储介质
CN116644039B (zh) * 2023-05-25 2023-12-19 安徽继远软件有限公司 一种基于大数据的在线能力运营日志自动采集分析的方法
CN116662218A (zh) * 2023-08-01 2023-08-29 北京德塔精要信息技术有限公司 日志实时收集处理方法及设备
CN116991815B (zh) * 2023-09-26 2024-01-19 苏州元脑智能科技有限公司 一种分布式存储系统的日志收集方法、装置、设备及介质

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN106709069A (zh) * 2017-01-25 2017-05-24 焦点科技股份有限公司 高可靠性的大数据日志采集与传输方法
CN108399199A (zh) * 2018-01-30 2018-08-14 武汉大学 一种基于Spark的应用软件运行日志的收集与服务处理系统及方法
CN108737549A (zh) * 2018-05-25 2018-11-02 江苏联盟信息工程有限公司 一种大数据量的日志分析方法及装置

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2010028279A1 (en) * 2008-09-05 2010-03-11 Arcsight, Inc. Storing log data efficiently while supporting querying

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN106709069A (zh) * 2017-01-25 2017-05-24 焦点科技股份有限公司 高可靠性的大数据日志采集与传输方法
CN108399199A (zh) * 2018-01-30 2018-08-14 武汉大学 一种基于Spark的应用软件运行日志的收集与服务处理系统及方法
CN108737549A (zh) * 2018-05-25 2018-11-02 江苏联盟信息工程有限公司 一种大数据量的日志分析方法及装置

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
基于 Kafka 和 Storm 的实时日志流处理系统的设计与实现;周敏菲;《CNKI优秀硕士学位论文全文库》;20170601;全文 *

Also Published As

Publication number Publication date
CN109542733A (zh) 2019-03-29

Similar Documents

Publication Publication Date Title
CN109542733B (zh) 一种高可靠的实时日志收集及可视化检索方法
CN107832196B (zh) 一种用于实时日志异常内容的监测装置及监测方法
CN111723160B (zh) 一种多源异构增量数据同步方法及系统
US11604804B2 (en) Data replication system
CN106294091B (zh) 一种无侵入式日志拦截性能分析方法及系统
US10891297B2 (en) Method and system for implementing collection-wise processing in a log analytics system
CN111209258A (zh) 税务端系统日志实时分析方法、设备、介质及系统
US20110191394A1 (en) Method of processing log files in an information system, and log file processing system
CN111125260A (zh) 一种基于SQL Server的数据同步方法及系统
CN111881011A (zh) 日志管理方法、平台、服务器及存储介质
CN109871392B (zh) 一种分布式应用系统下的慢sql实时数据采集方法
WO2022062185A1 (zh) 告警信息推送方法、系统、智能终端及存储介质
CN110209518A (zh) 一种多数据源日志数据集中收集存储方法及装置
CN111259073A (zh) 基于日志、流量和业务访问的业务系统运行状态智能研判系统
US20130339801A1 (en) System and method for log and trace diagnostics and analytics
CN114090529A (zh) 一种日志管理方法、装置、系统和存储介质
Ma et al. On benchmarking online social media analytical queries
CN105069029B (zh) 一种实时etl系统及方法
CN116932148B (zh) 一种基于ai的问题诊断系统及方法
CN113672452A (zh) 一种数据采集任务的运行监控方法、系统
CN117251414A (zh) 一种基于异构技术的数据存储及处理方法
CN112685370A (zh) 一种日志采集方法、装置、设备和介质
CN115314300B (zh) 飞行训练模拟机数据分析系统
Yuan et al. Design and implementation of accelerator control monitoring system
CN116028192A (zh) 一种多源异构数据采集方法、装置和存储介质

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant