日志数据采集方法、系统及服务器技术领域
本申请涉及网络通信技术领域,特别是涉及一种日志数据采集方法、系
统及服务器。
背景技术
证券公司总部为了方便用户访问证券系统,会在不同地点部署具有相同
功能的服务器,这些服务器也可以称为镜像站点服务器或委托服务器,各委
托服务器通过internet网络访问总部的日志采集服务器,委托服务器越多,每
个委托服务器所分配的网络访问带宽就会变小。证券系统每天都会产生大量
的日志数据,日志数据用于保存用户的交易记录,包括用户的来源IP、MAC
地址、数字签名等。现有技术中,为了不影响证券系统的日常运行,减少各
委托服务器的带宽使用,各委托服务器均不对日志数据进行实时采集上报,
而是在非工作时间,例如晚上将日志数据传输到总部的日志采集服务器进行
汇总。
发明人在对现有技术的研究过程中发现,现有技术中由于网络带宽的限
制,导致总部的日志采集服务器难以实时采集到所有委托服务器上生成的日
志数据;进一步,在需要实时查询个别用户的交易数据时,只能通过在线汇
总所有委托服务器的日志数据,进行手工查询,因此日志数据的汇总速度较
慢,导致查询效率不高。
发明内容
本申请实施例提供了一种日志数据采集方法、系统及服务器,以解决现
有技术中难以实时采集委托服务器的日志数据的问题。
为了解决上述技术问题,本申请实施例公开了如下技术方案:
一种日志数据采集方法,应用于包含至少一个日志采集服务器的系统中,
每个所述日志采集服务器对应于多个委托服务器,所述方法包括:
委托服务器实时保存根据用户操作信息生成的日志文件;
日志采集服务器根据预先设置的采集策略动态调整委托服务器的日志采
集速度;
日志采集服务器接收所述委托服务器按照所述日志采集速度上报的日志
文件。
所述委托服务器实时保存根据用户操作信息生成的日志文件包括:
委托服务器将根据用户的操作信息生成的日志数据保存至缓存中;
当在预设时间内缓存中的日志数据的数据量超过预设数据量,或者缓存
中日志数据的数据量没有超过预设数量但到达预设时间时,将所述缓存中的
日志数据以日志文件的形式写入磁盘。
所述日志采集服务器根据预先设置的采集策略动态调整委托服务器的日
志采集速度包括:
所述日志采集服务器根据委托服务器上报的CPU信息调整所述委托服务
器的日志采集速度;或
所述日志采集服务器根据委托服务器上报的内存占用率调整所述委托服
务器的日志采集速度;或
所述日志采集服务器根据委托服务器的网络流量使用率调整所述委托服
务器的日志采集速度;或
所述日志采集服务器根据与所述日志采集服务器相连的日志数据库的繁
忙程度调整所述委托服务器的日志采集速度。
所述委托服务器按照日志采集速度上报日志文件包括:
委托服务器将待上报的日志文件读入缓存;
对所述日志文件进行压缩;
将压缩后的日志文件按照所述日志采集速度传输至所述日志采集服务
器。
还包括:
所述委托服务器在按照日志采集速度上报日志文件的过程中,实时记录
当前传输的日志数据在日志文件中的位置信息;
当所述委托服务器的系统发生异常并恢复正常后,根据所述记录的位置
信息继续上报所述日志文件。
还包括:
所述日志采集服务器对接收到的日志文件进行解析,生成与预设格式一
致的日志记录;
将所述日志记录发送至日志数据库进行保存。
还包括:为所述日志采集服务器配置至少一个备份服务器,
当所述日志采集服务器故障时,切换到所述备份服务器;
所述日志采集服务器通过所述备份服务器与所述委托服务器进行日志数
据的采集交互。
一种日志数据采集系统,包括:至少一个日志采集服务器,与每个日志
采集服务器对应的多个委托服务器,其中,
所述委托服务器,用于实时保存根据用户操作信息生成的日志文件;
所述日志采集服务器,用于根据预先设置的采集策略动态调整委托服务
器的日志采集速度,并接收所述委托服务器按照所述日志采集速度上报的日
志文件。
所述日志采集服务器,具体用于根据委托服务器上报的CPU信息调整所
述委托服务器的日志采集速度;或根据委托服务器上报的内存占用率调整所
述委托服务器的日志采集速度;或根据委托服务器的网络流量使用率调整所
述委托服务器的日志采集速度;或根据与所述日志采集服务器相连的日志数
据库的繁忙程度调整所述委托服务器的日志采集速度。
所述委托服务器,还用于在按照日志采集速度上报日志文件的过程中,
实时记录当前传输的日志数据在日志文件中的位置信息,当所述委托服务器
的系统发生异常并恢复正常后,根据所述记录的位置信息继续上报所述日志
文件。
所述日志采集服务器,还用于对接收到的日志文件进行解析,生成与预
设格式一致的日志记录,将所述日志记录发送至日志数据库进行保存。
还包括:为所述日志采集服务器配置的至少一个备份服务器,
所述备份服务器,用于当所述日志采集服务器故障时,切换到所述备份
服务器,由所述备份服务器与所述委托服务器进行日志数据的采集交互。
一种日志采集服务器,应用于日志数据采集系统中,所述日志采集服务
器对应于多个委托服务器,包括:
调整单元,用于根据预先设置的采集策略动态调整委托服务器的日志采
集速度;
采集单元,用于接收所述委托服务器按照所述日志采集速度上报的日志
文件,所述日志文件为所述委托服务器实时保存的根据用户操作信息生成的
日志文件。
所述调整单元包括至少一个下述单元:
第一调整单元,用于根据委托服务器上报的CPU信息调整所述委托服务
器的日志采集速度;
第二调整单元,用于根据委托服务器上报的内存占用率调整所述委托服
务器的日志采集速度;
第三调整单元,用于根据委托服务器的网络流量使用率调整所述委托服
务器的日志采集速度;
第四调整单元,用于根据与所述日志采集服务器相连的日志数据库的繁
忙程度调整所述委托服务器的日志采集速度。
还包括:
生成单元,用于对接收到的日志文件进行解析,生成与预设格式一致的
日志记录;
保存单元,用于将所述日志记录发送至日志数据库进行保存。
由上述实施例可以看出,本申请实施例中每个日志采集服务器对应多个
委托服务器,委托服务器实时保存根据用户操作信息生成的日志文件,日志
采集服务器根据预先设置的采集策略动态调整委托服务器的日志采集速度,
日志采集服务器接收委托服务器按照所述日志采集速度上报的日志文件。应
用本申请实施例,由于总部的日志采集服务器可以根据预设采集策略动态调
整各个委托服务器的日志采集速度,因此可以实现对日志数据的实时采集;
并且,由于日志采集服务器可以实现对委托服务器的日志数据进行自动采集
和汇总,因此可以提高日志数据的查询效率。
附图说明
为了更清楚地说明本申请实施例或现有技术中的技术方案,下面将对实
施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,对于
本领域普通技术人员而言,在不付出创造性劳动性的前提下,还可以根据这
些附图获得其他的附图。
图1为本申请日志数据采集方法的第一实施例流程图;
图2为本申请日志数据采集方法的第二实施例流程图;
图3为本申请日志数据采集系统的第一实施例框图;
图4为本申请日志数据采集系统的第一实施例框图;
图5为本申请日志采集服务器的第一实施例框图;
图6为本申请日志采集服务器的第二实施例框图。
具体实施方式
本发明如下实施例提供了一种日志数据采集方法、系统及服务器。本申
请实施例所应用的系统架构中包含至少一个日志采集服务器,以及与每个日
志采集服务器对应的多个委托服务器。
为了使本技术领域的人员更好地理解本发明实施例中的技术方案,并使
本发明实施例的上述目的、特征和优点能够更加明显易懂,下面结合附图对
本发明实施例中技术方案作进一步详细的说明。
参见图1,为本申请日志数据采集方法的第一实施例流程图:
步骤101:委托服务器实时保存根据用户操作信息生成的日志文件。
其中,委托服务器将根据用户的操作信息生成的日志数据保存至缓存中,
当在预设时间内缓存中的日志数据的数据量超过预设数据量,或者缓存中日
志数据的数据量没有超过预设数量但到达预设时间时,将缓存中的日志数据
以日志文件的形式写入磁盘。
步骤102:日志采集服务器根据预先设置的采集策略动态调整委托服务器
的日志采集速度。
其中,采集策略可以包括至少下述一种:根据委托服务器上报的CPU信
息调整所述委托服务器的日志采集速度;根据委托服务器上报的内存占用率
调整所述委托服务器的日志采集速度;根据委托服务器的网络流量使用率调
整所述委托服务器的日志采集速度;根据与所述日志采集服务器相连的日志
数据库的繁忙程度调整所述委托服务器的日志采集速度。
步骤103:日志采集服务器接收委托服务器按照日志采集速度上报的日志
文件。
其中,委托服务器将待上报的日志文件读入缓存,对日志文件进行压,
将压缩后的日志文件按照所述日志采集速度传输至日志采集服务器。
应用上述实施例,由于日志采集服务器可以根据预设采集策略动态调整
各个委托服务器的日志采集速度,因此可以实现对日志数据的实时采集;并
且,由于日志采集服务器可以实现对委托服务器的日志数据进行自动采集和
汇总,因此可以提高日志数据的查询效率。当上述实施例应用在证券系统中
时,可以保证位于总部的日志采集服务器能够实时自动采集到分布在各地的
委托服务器上报的日志数据。
参见图2,为本申请日志数据采集方法的第二实施例流程图:
步骤201:委托服务器将根据用户的操作信息生成的日志数据保存至缓存
中。
委托服务器可以按照现有技术中的日志保存机制对日志数据进行保存,
这样可以进一步避免对现有委托服务器系统中的功能进行改变,防止委托服
务器与日志采集服务器之间的耦合度降低,影响日志采集服务器所在的证券
系统的正常运行。
步骤202:委托服务器将缓存中的日志数据以日志文件的形式写入磁盘。
其中,委托服务器可以按照定时定量的方式将日志数据写入磁盘,例如,
可以判断在预设时间内缓存中的日志数据的数据量是否超过预设数据量,当
超过预设数据量时,就将缓存中的日志数据写入磁盘;或者,当日志数据的
数据量较小,比如缓存中日志数据的数据量没有超过预设数量但到达预设时
间时,也可以将缓存中的日志数据写入磁盘,从而兼顾委托服务器系统的系
统性能和实效性。
对于写入磁盘的日志数据,可以以日志文件的形式进行保存,日志文件
可以采用文本方式,日志文件中的每一条日志记录对应一个用户的操作记录。
步骤203:日志采集服务器根据预先设置的采集策略动态调整委托服务器
的日志采集速度。
其中,采集策略可以包括至少下述一种:根据委托服务器上报的CPU信
息调整所述委托服务器的日志采集速度;根据委托服务器上报的内存占用率
调整所述委托服务器的日志采集速度;根据委托服务器的网络流量使用率调
整所述委托服务器的日志采集速度;根据与所述日志采集服务器相连的日志
数据库的繁忙程度调整所述委托服务器的日志采集速度。
上述各种采集策略可以选择其一对委托服务器的日志采集速度进行调
整,也可以综合考虑多个策略之间的加权结果对委托服务器的日志采集速度
进行调整。例如,日志采集服务器可以按照预设时间间隔接收委托服务器上
报的CPU和内存的使用情况,根据该使用情况判断所有委托服务器的负荷状
况,对于系统负荷较低的委托服务器,可以向其发出提高日志文件上报速度
和上报频率的指令,对于系统负荷较高的委托服务器,为了保证其优先执行
业务需求,可以向其发出降低日志文件上报速度和上报频率的指令,甚至可
以向其发出暂时不上报日志文件的指令。
步骤204:委托服务器将待上报的日志文件读入缓存。
由于委托服务器中保存了海量的日志数据,因此在向日志采集服务器上
报日志数据时,可能每一次只能上报日志文件中预设大小的日志数据,因此
在从日志文件中将日志数据读入缓存时,可以记录已读取日志数据的偏移位
置,以便在下一次读取日志数据时,可以从所记录的偏移位置开始,读取预
设大侠的日志数据。
步骤205:委托服务器对读入缓存的日志文件进行压缩。
本步骤为可选步骤,即可以根据网络传输性能选择是否对日志文件进行
压缩,当网络传输性能较低时,为了提高日志数据的传输效率,可以对缓存
中的日志数据进行压缩后再传输。
步骤206:委托服务器将压缩后的日志文件按照所述日志采集速度传输至
日志采集服务器。
其中,委托服务器可以在按照日志采集速度上报日志文件的过程中,实
时记录当前传输的日志数据在日志文件中的位置信息,以便当委托服务器的
系统发生异常并恢复正常后,可以根据记录的位置信息继续上报该日志文件。
步骤207:日志采集服务器对接收到的日志文件进行解析,生成与预设格
式一致的日志记录。
当委托服务器对日志文件进行压缩后上报时,日志采集服务器接收到日
志文件后,需要对该日志文件进行解析,生成适合保存的与预设格式一致的
日志记录,该预设格式可以与委托服务器磁盘中所保存日志数据的格式一致。
步骤208:将日志记录发送至日志数据库进行保存。
进一步,上述实施例中,还可以为每个日志采集服务器配置至少一个备
份服务器,以便于当日志采集服务器故障时,可以切换到该备份服务器,该
备份服务器具有与日志采集服务器一致的功能,通过该备份服务器与委托服
务器进行日志数据的采集交互。
应用上述实施例,由于日志采集服务器可以根据预设采集策略动态调整
各个委托服务器的日志采集速度,因此可以实现对日志数据的实时采集;并
且,由于日志采集服务器可以实现对委托服务器的日志数据进行自动采集和
汇总,因此可以提高日志数据的查询效率。当上述实施例应用在证券系统中
时,可以保证位于总部的日志采集服务器能够实时自动采集到分布在各地的
委托服务器上报的日志数据。
与本申请日志数据采集方法的实施例相对应,本申请还提供了日志数据
采集系统和日志采集服务器的实施例。
参见图3,为本申请日志数据采集系统的第一实施例框图:
该系统包括:至少一个日志采集服务器310,以及与每个日志采集服务器
310对应的多个委托服务器320。为了示例方便,图3中仅示出了一个日志采
集服务器和与其对应的两个委托服务器。
其中,所述委托服务器320,用于实时保存根据用户操作信息生成的日志
文件;
所述日志采集服务器310,用于根据预先设置的采集策略动态调整委托服
务器320的日志采集速度,并接收所述委托服务器320按照所述日志采集速
度上报的日志文件。
参见图4,为本申请日志数据采集系统的第二实施例框图:
该系统包括:至少一个日志采集服务器410,与每个日志采集服务器410
对应的多个委托服务器420,以及为日志采集服务器410配置的至少一个备份
服务器430。为了示例方便,图4中仅示出了一个日志采集服务器和与其对应
的两个委托服务器,以及一个备份服务器。
其中,所述委托服务器420,用于实时保存根据用户操作信息生成的日志
文件;
所述日志采集服务器410,用于根据预先设置的采集策略动态调整委托服
务器420的日志采集速度,并接收所述委托服务器420按照所述日志采集速
度上报的日志文件;
所述备份服务器430,用于当所述日志采集服务器410故障时,切换到所
述备份服务器430,由所述备份服务器430与所述委托服务器420进行日志数
据的采集交互。
进一步,所述日志采集服务器410,具体用于根据委托服务器420上报的
CPU信息调整所述委托服务器420的日志采集速度;或根据委托服务器420
上报的内存占用率调整所述委托服务器420的日志采集速度;或根据委托服
务器420的网络流量使用率调整所述委托服务器420的日志采集速度;或根
据与所述日志采集服务器410相连的日志数据库的繁忙程度调整所述委托服
务器420的日志采集速度。
进一步,所述委托服务器420,还用于在按照日志采集速度上报日志文件
的过程中,实时记录当前传输的日志数据在日志文件中的位置信息,当所述
委托服务器420的系统发生异常并恢复正常后,根据所述记录的位置信息继
续上报所述日志文件。
所述日志采集服务器410,还用于对接收到的日志文件进行解析,生成与
预设格式一致的日志记录,将所述日志记录发送至日志数据库进行保存。
参见图5,为本申请日志采集服务器的第一实施例框图:
该日志采集服务器应用于日志数据采集系统中,对应于多个委托服务器,
该日志采集服务器包括:调整单元510和采集单元520。
其中,调整单元510,用于根据预先设置的采集策略动态调整委托服务器
的日志采集速度;
采集单元520,用于接收所述委托服务器按照所述日志采集速度上报的日
志文件,所述日志文件为所述委托服务器实时保存的根据用户操作信息生成
的日志文件。
参见图6,为本申请日志采集服务器的第二实施例框图:
该日志采集服务器应用于日志数据采集系统中,对应于多个委托服务器,
该日志采集服务器包括:调整单元610、采集单元620、生成单元630和保存
单元640。
其中,调整单元610,用于根据预先设置的采集策略动态调整委托服务器
的日志采集速度;
采集单元620,用于接收所述委托服务器按照所述日志采集速度上报的日
志文件,所述日志文件为所述委托服务器实时保存的根据用户操作信息生成
的日志文件;
生成单元630,用于对接收到的日志文件进行解析,生成与预设格式一致
的日志记录;
保存单元640,用于将所述日志记录发送至日志数据库进行保存。
具体的,所述调整单元610可以包括至少一个下述单元(图6中未示出):
第一调整单元,用于根据委托服务器上报的CPU信息调整所述委托服务
器的日志采集速度;
第二调整单元,用于根据委托服务器上报的内存占用率调整所述委托服
务器的日志采集速度;
第三调整单元,用于根据委托服务器的网络流量使用率调整所述委托服
务器的日志采集速度;
第四调整单元,用于根据与所述日志采集服务器相连的日志数据库的繁
忙程度调整所述委托服务器的日志采集速度。
通过对以上实施方式的描述可知,本申请实施例中每个日志采集服务器
对应多个委托服务器,委托服务器实时保存根据用户操作信息生成的日志文
件,日志采集服务器根据预先设置的采集策略动态调整委托服务器的日志采
集速度,日志采集服务器接收委托服务器按照所述日志采集速度上报的日志
文件。应用本申请实施例,由于总部的日志采集服务器可以根据预设采集策
略动态调整各个委托服务器的日志采集速度,因此可以实现对日志数据的实
时采集;并且,由于日志采集服务器可以实现对委托服务器的日志数据进行
自动采集和汇总,因此可以提高日志数据的查询效率。
本领域的技术人员可以清楚地了解到本发明实施例中的技术可借助软件
加必需的通用硬件平台的方式来实现。基于这样的理解,本发明实施例中的
技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体
现出来,该计算机软件产品可以存储在存储介质中,如ROM/RAM、磁碟、
光盘等,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务
器,或者网络设备等)执行本发明各个实施例或者实施例的某些部分所述的
方法。
本说明书中的各个实施例均采用递进的方式描述,各个实施例之间相同
相似的部分互相参见即可,每个实施例重点说明的都是与其他实施例的不同
之处。尤其,对于系统实施例而言,由于其基本相似于方法实施例,所以描
述的比较简单,相关之处参见方法实施例的部分说明即可。
以上所述的本发明实施方式,并不构成对本发明保护范围的限定。任何
在本发明的精神和原则之内所作的修改、等同替换和改进等,均应包含在本
发明的保护范围之内。