一种日志数据采集方法及系统技术方案

技术编号:16546991 阅读:42 留言:0更新日期:2017-11-11 11:46
本发明专利技术提供了一种日志数据采集方法及系统,方法包括:预先将待采集日志数据的目标区域划分为至少两个采集区域,各采集区域均包括:数据中心和至少一个分支机构,日志存储系统位于所述至少两个采集区域其中之一的第一采集区域的数据中心;采集各分支机构和数据中心中的web服务器的日志数据,并将采集的各分支机构的日志数据传输到该分支机构所在采集区域的数据中心;各采集区域的日志数据通过第一采集区域的数据中心的Flume一级接收端存储至日志存储系统。本发明专利技术日志采集方案,结合高可用性、高可靠性、高时效等特性为一体,提高工作效率。

Log data acquisition method and system

The present invention provides a system and method, log data acquisition method comprises the following steps: pre to log data acquisition target area is divided into at least two collection areas, each area includes: data acquisition center and at least one branch, the first regional acquisition log storage system is in the collection area one of at least two the data center; log data acquisition of each branch and the data center in web server, log and transmit data of each branch to the branch where the acquisition data of the regional center; the log data collection areas by first collecting area of the data center Flume a receiver to store log storage system. The log collection scheme of the invention combines the characteristics of high availability, high reliability and high time efficiency, and improves the work efficiency.

【技术实现步骤摘要】
一种日志数据采集方法及系统
本专利技术涉及数据处理技术,具体的讲是一日志采集方法及系统。
技术介绍
目前,电子商务和互联网金融得到了快速发展。在线交易给用户带来便利性的同时,也面临着潜在风险,如用户账户盗用、金融诈骗和洗钱等。因此,企业对交易风险的监控需求日益强烈。传统企业对交易风险进行监测时,通常在企业内部设立风控部门,对用户交易进行线下分析,发现可疑数据后进行干预处理。随着大数据技术的发展,交易风险控制逐步进入数字化和智能化。借助大数据的手段,交易风险监控不仅节省人力物力,提高工作效率,同时能够有效减少经济犯罪导致的损失。日志数据是交易风险监控利用大数据技术挖掘分析时其所需信息一项重要的来源,因此,各类日志采集系统在企业内部得到了广泛使用。现有技术的众多日志采集相关的产品中,Flume是其中一款具有较高知名度的高性能分布式开源产品,它提供了可简单配置的多层采集架构,可支持从多种数据源高效收集日志数据并保存到中央数据仓库。但是,现有技术的日志采集方式为按文件粒度采集数据,即等待文件生成后再进行采集。由于其采集速度受限,对于一些时效性需求较高的业务,如在电子商务企业通过在线推荐用户商品进行实时营销、金融系统跟踪客户交易数据监控交易风险等应用中,已无法满足实时性的需求。为了加快日志采集,现有技术中,Flume提出了以tail-F方式逐行采集的方法,实现了日志的持续采集。但该方式存在以下不足,即,一旦应用服务发生重启、日志内容覆盖或删除等非常态事件,它会造成数据丢失或者采集到错误的半行数据,导致后续的日志分析发生错误。
技术实现思路
为了克服传统日志采集中应对非常态事件的不足,导致数据丢失、日志分析错误等问题,本专利技术实施例提供了一种日志数据采集方法,方法包括:预先将待采集日志数据的目标区域划分为至少两个采集区域,各采集区域均包括:数据中心和至少一个分支机构,日志存储系统位于所述至少两个采集区域其中之一的第一采集区域的数据中心;采集各分支机构和数据中心中的web服务器的日志数据,并将采集的各分支机构的日志数据传输到该分支机构所在采集区域的数据中心;各采集区域的日志数据通过第一采集区域的数据中心的Flume一级接收端存储至日志存储系统。本专利技术实施例中,所述的采集各分支机构和数据中心中的web服务器的日志数据,并将采集的各分支机构的日志数据传输到该分支机构所在采集区域的数据中心包括:采集的分支机构的web服务器的日志数据,通过位于分支机构的Flume接收端传输到该分支机构所在采集区域的数据中心的Flume接收端。本专利技术实施例中,所述的各采集区域的日志数据通过第一采集区域的数据中心的Flume一级接收端存储至日志存储系统包括:采集的数据中心的web服务器的日志数据,通过数据中心的Flume二级接收端传输至第一采集区域的数据中心的Flume一级接收端存储至日志存储系统;采集的第一采集区域的分支机构的web服务器的日志数据,通过该分支机构的Flume接收端传输至所述Flume一级接收端存储至日志存储系统;采集的非第一采集区域的分支机构的web服务器的日志数据,通过对应的数据中心的Flume二级接收端传输至所述Flume一级接收端存储至日志存储系统。本专利技术实施例中,非第一采集区域的数据中心的Flume二级接收端通过高速网络专线连接至Flume一级接收端。本专利技术实施例中,所述的采集各分支机构和数据中心中的web服务器的日志数据,并将采集的各分支机构的日志数据传输到该分支机构所在采集区域的数据中心包括:以数据块为单位读取web服务器的日志数据并写入中转队列;将中转队列中的日志数据发送至Flume接收端;根据所述Flume接收端所在地类型确定日志数据的下游发送地。本专利技术实施例中,所述的方法包括:预先设定web服务器的日志数据的切分原则,所述的切分原则包括:以大小或时间对日志数据进行切分;根据设定的web服务器的日志数据的切分原则生成存储日志数据的日志文件。本专利技术实施例中,所述的以数据块为单位读取web服务器的日志数据并写入中转队列包括:步骤1,将文件指针指向待采集的日志;步骤2,从指定偏移量以数据块为单位读取当前日志文件中的日志数据;步骤3,从数据块中逐一读取字符放入缓存;步骤4,按行提取缓存中的字符写入中转队列。本专利技术实施例中,所述的从数据块中逐一读取字符放入缓存包括:判断是否读取到新的字符以确定是否为数据块尾;确定读取到的为数据块尾,则执行步骤2。本专利技术实施例中,所述的按行提取缓存中的字符写入中转队列包括:判断读取到新的字符是否为换行符;确定读取到的字符为换行符,提取缓存中的字符写入中转队列;确定读取到的字符不是换行符,则执行步骤3。本专利技术实施例中,确定读取到的为数据块尾执行步骤2之前,进一步执行日志异常检测,确定日志异常,则重置指针偏移量后执行步骤2。本专利技术实施例中,在执行步骤2之前进一步包括:判断是否有新增的日志文件;其中,确定没有新增日志文件,执行步骤2;确定有新增日志文件,则在读取完当前日志文件后指定新增的日志文件为下一个待读取的日志文件。本专利技术实施例中,在执行步骤3之前包括:判断是否读取到数据块;确定读取到数据块,则执行步骤3;确定未读取到数据块,则进行等待预设的指定时间。本专利技术实施例中,确定未读取到数据块,等待预设的指定时间之后,执行日志异常检测,日志异常则重置指针偏移量后执行步骤判断是否有新增的日志文件。同时,本专利技术还提供一种日志数据采集系统,包括:区域划分装置,用于将待采集日志数据的目标区域划分为至少两个采集区域,各采集区域均包括:数据中心和至少一个分支机构,日志存储系统位于所述至少两个采集区域其中之一的第一采集区域的数据中心;日志数据采集装置,用于采集各分支机构和数据中心中的web服务器的日志数据,并将采集的各分支机构的日志数据传输到该分支机构所在采集区域的数据中心;Flume一级接收端,设置于所述第一采集区域的数据中心,用于将各采集区域的日志数据存储至日志存储系统。本专利技术实施例中,所述的日志数据采集装置包括:采集客户端,设置于所述各分支机构和数据中心,采集各分支机构和数据中心中的web服务器的日志数据;Flume接收端,设置于所述各分支结构和数据中心;其中,采集的数据中心的web服务器的日志数据,通过数据中心的Flume二级接收端传输至所述Flume一级接收端存储至日志存储系统;采集的第一采集区域的分支机构的web服务器的日志数据,通过该分支机构的Flume接收端传输至Flume一级接收端存储至日志存储系统;采集的非第一采集区域的分支机构的web服务器的日志数据,通过该分支机构的Flume接收端传输至对应的数据中心的二级接收端,并通过数据中心的Flume二级接收端传输至所述Flume一级接收端存储至日志存储系统。本专利技术实施例中,非第一采集区域的数据中心的Flume二级接收端通过高速网络专线连接至Flume一级接收端。本专利技术实施例中,所述的采集装置包括:读取模块,以数据块为单位读取web服务器的日志数据并写入中转队列;中转模块,用于将中转队列中的日志数据发送至Flume接收端;所述Flume接收端根据所在地类型确定日志数据的下游发送地。本专利技术实施例中,所述读取模块包括:原则预设单元,用于预先设定w本文档来自技高网...
一种日志数据采集方法及系统

【技术保护点】
一种日志数据采集方法,其特征在于,所述的方法包括:预先将待采集日志数据的目标区域划分为至少两个采集区域,各采集区域均包括:数据中心和至少一个分支机构,日志存储系统位于所述至少两个采集区域其中之一的第一采集区域的数据中心;采集各分支机构和数据中心中的web服务器的日志数据,并将采集的各分支机构的日志数据传输到该分支机构所在采集区域的数据中心;各采集区域的日志数据通过第一采集区域的数据中心的Flume一级接收端存储至日志存储系统。

【技术特征摘要】
1.一种日志数据采集方法,其特征在于,所述的方法包括:预先将待采集日志数据的目标区域划分为至少两个采集区域,各采集区域均包括:数据中心和至少一个分支机构,日志存储系统位于所述至少两个采集区域其中之一的第一采集区域的数据中心;采集各分支机构和数据中心中的web服务器的日志数据,并将采集的各分支机构的日志数据传输到该分支机构所在采集区域的数据中心;各采集区域的日志数据通过第一采集区域的数据中心的Flume一级接收端存储至日志存储系统。2.如权利要求1所述的日志数据采集方法,其特征在于,所述的采集各分支机构和数据中心中的web服务器的日志数据,并将采集的各分支机构的日志数据传输到该分支机构所在采集区域的数据中心包括:采集的分支机构的web服务器的日志数据,通过位于分支机构的Flume接收端传输到该分支机构所在采集区域的数据中心的Flume接收端。3.如权利要求2所述的日志数据采集方法,其特征在于,所述的各采集区域的日志数据通过第一采集区域的数据中心的Flume一级接收端存储至日志存储系统包括:采集的数据中心的web服务器的日志数据,通过数据中心的Flume二级接收端传输至第一采集区域的数据中心的Flume一级接收端存储至日志存储系统;采集的第一采集区域的分支机构的web服务器的日志数据,通过该分支机构的Flume接收端传输至所述Flume一级接收端存储至日志存储系统;采集的非第一采集区域的分支机构的web服务器的日志数据,通过对应的数据中心的Flume二级接收端传输至所述Flume一级接收端存储至日志存储系统。4.如权利要求3所述的日志数据采集方法,其特征在于,非第一采集区域的数据中心的Flume二级接收端通过高速网络专线连接至Flume一级接收端。5.如权利要求1或4任一权利要求所述的日志数据采集方法,其特征在于,所述的采集各分支机构和数据中心中的web服务器的日志数据,并将采集的各分支机构的日志数据传输到该分支机构所在采集区域的数据中心包括:以数据块为单位读取web服务器的日志数据并写入中转队列;将中转队列中的日志数据发送至Flume接收端;根据所述Flume接收端所在地类型确定日志数据的下游发送地。6.如权利要求5所述的日志数据采集方法,其特征在于,所述的方法包括:预先设定web服务器的日志数据的切分原则,所述的切分原则包括:以大小或时间对日志数据进行切分;根据设定的web服务器的日志数据的切分原则生成存储日志数据的日志文件。7.如权利要求6所述的日志数据采集方法,其特征在于,所述的以数据块为单位读取web服务器的日志数据并写入中转队列包括:步骤1,将文件指针指向待采集的日志;步骤2,从指定偏移量以数据块为单位读取当前日志文件中的日志数据;步骤3,从数据块中逐一读取字符放入缓存;步骤4,按行提取缓存中的字符写入中转队列。8.如权利要求7所述的日志数据采集方法,其特征在于,所述的从数据块中逐一读取字符放入缓存包括:判断是否读取到新的字符以确定是否为数据块尾;确定读取到的为数据块尾,则执行步骤2。9.如权利要求8所述的日志数据采集方法,其特征在于,所述的按行提取缓存中的字符写入中转队列包括:判断读取到新的字符是否为换行符;确定读取到的字符为换行符,提取缓存中的字符写入中转队列;确定读取到的字符不是换行符,则执行步骤3。10.如权利要求8或9任一权利要求所述的日志数据采集方法,其特征在于,确定读取到的为数据块尾执行步骤2之前,进一步执行日志异常检测,确定日志异常,则重置指针偏移量后执行步骤2。11.如权利要求7所述的日志数据采集方法,其特征在于,在执行步骤2之前进一步包括:判断是否有新增的日志文件;其中,确定没有新增日志文件,执行步骤2;确定有新增日志文件,则在读取完当前日志文件后指定新增的日志文件为下一个待读取的日志文件。12.如权利要求11所述的日志数据采集方法,其特征在于,在执行步骤3之前包括:判断是否读取到数据块;确定读取到数据块,则执行步骤3;确定未读取到数据块,则进行等待预设的指定时间。13.如权利要求12所述的日志数据采集方法,其特征在于,确定未读取到数据块,等待预设的指定时间之后,执行日志异常检测,日志异常则重置指针偏移量后执行步骤判断是否有新增的日志文件。14.一种...

【专利技术属性】
技术研发人员:袁一沈贇张学舟游枫
申请(专利权)人:中国工商银行股份有限公司
类型:发明
国别省市:北京,11

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1