日志采集方法、日志采集系统和服务器与流程

文档序号:12477590阅读:589来源:国知局
日志采集方法、日志采集系统和服务器与流程

本发明涉及服务器技术领域,具体而言,涉及一种日志采集方法、一种日志采集系统和一种服务器。



背景技术:

在相关技术中,业务系统(客户端/服务器架构模式)的日志采集点需预先设置,由于无法预知业务系统会在何处出现故障,因此需要在所有可能的地方都设置采集点,由此导致采集点比较分散且没有分布规律,当业务系统运行故障,需要及时分析时,由于有价值的日志被大量无关的日志淹没,降低了问题排查的效率。

因此,如何设计一种新的日志采集方案,以提高在日志定位和分析故障时的工作效率成为亟待解决的技术问题。



技术实现要素:

本发明正是基于上述技术问题至少之一,提出了一种新的日志采集方案,通过根据采集点的标识信息对采集点隔离,根据预设的配置文件将隔离采集点生成的日志信息进行组装信息对象集合,并转换为指定格式,以存储至服务器的日志文件系统中,实现了对日志信息进行分流处理,提高了服务器的工作效率,增加了日志信息采集的灵活性和准确性,减少了无关日志信息的干扰,提高了对日志信息的分析效率。

有鉴于此,本发明提出了一种日志采集方法,包括:根据服务器的采集点的标识信息对目标采集点进行隔离;根据预设的配置文件将隔离采集点生成的日志信息组合以形成信息对象集合;根据预设的配置文件将信息对象集合转换为指定格式,并将指定格式的信息对象集合存储至服务器的日志文件系统中。

在该技术方案中,通过根据采集点的标识信息对采集点隔离,根据预设的配置文件将隔离采集点生成的日志信息进行组装信息对象集合,并转换为指定格式,以存储至服务器的日志文件系统中,实现了对日志信息进行分流处理,提高了服务器的工作效率,增加了日志信息采集的灵活性和准确性,减少了无关日志信息的干扰,提高了对日志信息的分析效率。

具体地,根据服务器的采集点的标识信息对目标采集点进行隔离,目标采集点对服务器易发生故障的区域进行日志信息采集,对目标采集点进行隔离可以通过通信通道隔离或网络隔离平台实现,也即将目标采集点的日志信息与其他采集点的数据隔离通信,也即在日志信息的采集的同时,即实现了初步的日志信息的隔离,减少无关的日志信息的干扰,提高日志定位的准确性和用户的分析效率。

进一步地,将隔离采集点的日志信息组合以形成信息对象集合,对日志信息的采集类似于管道线程,按照预设的配置文件中的采集参数从各个隔离的采集点把日志信息读取出来,可以按照用户的要求将隔离的采集点的日志信息分流到不同的日志文件系统中,使服务器中各个装置间的分工更加明确,并且通过分流可以将不同采集点的日志信息进行分类,将同一采集点的日志信息进行聚合,使日志信息能够精准存储,减少无关的日志信息的干扰,提高日志定位的准确性和用户的分析效率。

另外,将信息对象集合根据预设的配置文件转换为指定格式,并以指定格式进行存储,使日志信息的组织更加灵活,处理更加便捷。

日志信息是记录系统中硬盘、软件和系统问题的信息,同时可以监视系统中发生的事件,例如包括应用程序日志、安全日志、系统日志和Web管理日志等。

例如,隔离采集点A、隔离采集点B和隔离采集点C,分别用于采集服务器的A服务区的第一故障日志信息、服务器的B服务区的第二故障日志信息和服务器的C服务区的第三故障日志信息,按照采集时间将第一故障日志信息、第二故障日志信息和第三故障日志信息以键值形式存储于应用堆栈中,并组合以形成信息对象集合,每个信息对象集合可以将采集时间段作为标识,进而可以在上述任一服务器发生故障时,确定发生故障时对应的采集时间段,以及对应的信息对象集合,提高了日志信息的故障分析效率和准确率,减少了运算量。

在上述技术方案中,优选地,在根据服务器的采集点的标识信息对目标采集点进行隔离前,还包括:预设配置文件的采集参数,其中,采集参数包括指定格式、日志信息类型、日志信息采集的触发条件、日志信息采集时段和信息对象集合的存储路径中的至少一种。

在该技术方案中,通过预设配置文件的采集参数,实现了日志信息的灵活存储,同时保证了日志信息采集的有效性,采集参数包括指定格式、日志信息类型、日志信息采集的触发条件、日志信息采集时段和信息对象集合的存储路径的至少一种,通过预设采集参数,可以将不同采集点的日志信息分流到不同的日志文件系统中。

具体地,指定格式包括W3C(World Wide Web Consortium,万维网联盟)扩展日志文件格式(其编码内容默认为ASCII文本)、Apache访问日志格式、ArcSight公共事件格式以及基于XML(Extensive Makeup Language,可扩展标示语言)的IDMEF(Intrusion Detection Message Exchange Format,报文交换格式)等格式,而根据执行的应用程序不同,日志信息类型也不同,比如根据测试计划执行过程日志、全球定位系统(Global Positioning System,GPS)定位信息日志以及呼叫信息日志等,日志信息类型还可以按照调试、警告、信息、错误等具体执行方式进行区分。对于日志信息采集时段可按照固定测试时间来指示。

在上述任一项技术方案中,优选地,根据预设的配置文件将隔离采集点生成的日志信息组合以形成信息对象集合,具体包括以下步骤:查询隔离采集点生成的日志信息;根据预设的配置文件,获取与日志信息类型对应的日志信息;将获取的日志信息组合以形成信息对象集合。

在该技术方案中,通过查询日志信息并获取与预设的日志信息类型对应的日志信息,以组合以形成信息对象集合,实现了对同类日志信息的聚合,将相同格式的日志信息进行批量处理,提高了服务器的工作效率。

具体地,根据预设的配置文件将日志信息组合以形成信息对象集合,配置文件用于描述日志信息的组装格式,比如按照预设的配置文件将日志信息以对应的应用程序名称、日志信息大小、日志信息采集时间以及日志信息内容等格式进行组装。

在上述任一项技术方案中,优选地,还包括:将信息对象集合以键值的形式存储在服务器的应用堆栈中。

在该技术方案中,通过将信息对象集合以键值的形式存储在服务器的应用堆栈中,实现了对信息对象集合中的日志信息的编辑与查找。

具体地,键值位于注册表结构链末端,包含应用程序执行时使用的实际配置信息和数据,通常包括几种数据类型(如字符串、二进制值、DWORD值等),以适应不同环境的使用需求,根据键值能够容易完成对服务器的应用堆栈中存储的日志信息的数据的增加、删除、修改和查询等操作。

其中,键值(分布数据系统中的key-value)形式的存储操作包括:

(1)执行tree搜索以定位插入数据(即日志信息的数据)所在的位置;

(2)锁定该位置的父节点;

(3)创建新的叶子节点;

(4)将叶子节点写入,这个写操作发生在内存(本申请的应用堆栈)中,并且返回一个数值,该数值决定了叶子节点写到硬盘的位置;

(5)修改父节点指向该叶子节点的引用,该父节点既持有指向内存的叶子节点的引用又持有磁盘的位置的数值;

(6)标记该父节点为“dirty”(意味着内存中的数据没有出现在磁盘中);

(7)解锁该父节点,通过节点检查操作将父节点指向的日志信息的数据写入到硬盘。

对与键值形式的查询操作包括:

定位到存储日志信息的结构树的叶子节点,通过主键查询来读取日志信息的数据。

在上述任一项技术方案中,优选地,还包括:在获取用户对配置文件的更新指令时,将更新后的配置文件替换为预设的配置文件。

在该技术方案中,将更新后的配置文件替换为预设的配置文件,定时启动管道线程,管道线程每次启动时都会读取最新的配置文件,从而更新日志信息的分流采集过程,提升了日志信息采集的灵活性。

根据本发明第二方面,还提出了一种日志采集系统,包括:隔离单元,用于根据服务器的采集点的标识信息对目标采集点进行隔离;组装单元,用于根据预设的配置文件将隔离采集点生成的日志信息组合以形成信息对象集合;存储单元,用于根据预设的配置文件将信息对象集合转换为指定格式,并将指定格式的信息对象集合存储至服务器的日志文件系统中。

在该技术方案中,通过根据采集点的标识信息对采集点隔离,根据预设的配置文件将隔离采集点生成的日志信息进行组合以形成信息对象集合,并转换为指定格式,以存储至服务器的日志文件系统中,实现了对日志信息进行分流处理,提高了服务器的工作效率,增加了日志信息采集的灵活性和准确性,减少了无关日志信息的干扰,提高了对日志信息的分析效率。

具体地,根据服务器的采集点的标识信息对目标采集点进行隔离,目标采集点对服务器易发生故障的区域进行日志信息采集,对目标采集点进行隔离可以通过通信通道隔离或网络隔离平台实现,也即将目标采集点的日志信息与其他采集点的数据隔离通信,也即在日志信息的采集的同时,即实现了初步的日志信息的隔离,减少无关的日志信息的干扰,提高日志定位的准确性和用户的分析效率。

进一步地,将隔离采集点的日志信息组合以形成信息对象集合,对日志信息的采集类似于管道线程,按照预设的配置文件中的采集参数从各个隔离的采集点把日志信息读取出来,可以按照用户的要求将隔离的采集点的日志信息分流到不同的日志文件系统中,使服务器中各个装置间的分工更加明确,并且通过分流可以将不同采集点的日志信息进行分类,将同一采集点的日志信息进行聚合,使日志信息能够精准存储,减少无关的日志信息的干扰,提高日志定位的准确性和用户的分析效率。

另外,将信息对象集合根据预设的配置文件转换为指定格式,并以指定格式进行存储,使日志信息的组织更加灵活,处理更加便捷。

日志信息是记录系统中硬盘、软件和系统问题的信息,同时可以监视系统中发生的事件,例如包括应用程序日志、安全日志、系统日志和Web管理日志等。

例如,隔离采集点A、隔离采集点B和隔离采集点C,分别用于采集服务器的A服务区的第一故障日志信息、服务器的B服务区的第二故障日志信息和服务器的C服务区的第三故障日志信息,按照采集时间将第一故障日志信息、第二故障日志信息和第三故障日志信息以键值形式存储于应用堆栈中,并组合以形成信息对象集合,每个信息对象集合可以将采集时间段作为标识,进而可以在上述任一服务器发生故障时,确定发生故障时对应的采集时间段,以及对应的信息对象集合,提高了日志信息的故障分析效率和准确率,减少了运算量。

在上述技术方案中,优选地,还包括:预设单元,用于预设配置文件的采集参数,其中,采集参数包括指定格式、日志信息类型、日志信息采集的触发条件、日志信息采集时段和信息对象集合的存储路径中的至少一种。

在该技术方案中,通过预设配置文件的采集参数,实现了日志信息的灵活存储,同时保证了日志信息采集的有效性,采集参数包括指定格式、日志信息类型、日志信息采集的触发条件、日志信息采集时段和信息对象集合的存储路径的至少一种,通过预设采集参数,可以将不同采集点的日志信息分流到不同的日志文件系统中。

具体地,指定格式包括W3C扩展日志文件格式、Apache访问日志格式、ArcSight公共事件格式以及基于XML的IDMEF等格式,而根据执行的应用程序不同,日志信息类型也不同,比如根据测试计划执行过程日志、全球定位系统(Global Positioning System,GPS)定位信息日志以及呼叫信息日志等,日志信息类型还可以按照调试、警告、信息、错误等具体执行方式进行区分。对于日志信息采集时段可按照固定测试时间来指示。在上述任一项技术方案中,优选地,还包括:查询单元,用于查询隔离采集点生成的日志信息;获取单元,用于根据预设的配置文件,获取与日志信息类型对应的日志信息;组装单元还用于:将获取的日志信息组合以形成信息对象集合。

在该技术方案中,通过查询日志信息并获取与预设的日志信息类型对应的日志信息,以组合以形成信息对象集合,实现了对同类日志信息的聚合,将相同格式的日志信息进行批量处理,提高了服务器的工作效率。

具体地,根据预设的配置文件将日志信息组合以形成信息对象集合,配置文件用于描述日志信息的组装格式,比如按照预设的配置文件将日志信息以对应的应用程序名称、日志信息大小、日志信息采集时间以及日志信息内容等格式进行组装。

在上述任一项技术方案中,优选地,存储单元还用于:将信息对象集合以键值的形式存储在服务器的应用堆栈中。

在该技术方案中,通过将信息对象集合以键值的形式存储在服务器的应用堆栈中,实现了对信息对象集合中的日志信息的编辑与查找。

具体地,键值位于注册表结构链末端,包含应用程序执行时使用的实际配置信息和数据,通常包括几种数据类型(如字符串、二进制值、DWORD值等),以适应不同环境的使用需求,根据键值能够容易完成对服务器的应用堆栈中存储的日志信息的数据的增加、删除、修改和查询等操作。

其中,键值(分布数据系统中的key-value)形式的存储操作包括:

(1)执行tree搜索以定位插入数据(即日志信息的数据)所在的位置;

(2)锁定该位置的父节点;

(3)创建新的叶子节点;

(4)将叶子节点写入,这个写操作发生在内存(本申请的应用堆栈)中,并且返回一个数值,该数值决定了叶子节点写到硬盘的位置;

(5)修改父节点指向该叶子节点的引用,该父节点既持有指向内存的叶子节点的引用又持有磁盘的位置的数值;

(6)标记该父节点为“dirty”(意味着内存中的数据没有出现在磁盘中);

(7)解锁该父节点,通过节点检查操作将父节点指向的日志信息的数据写入到硬盘。

对与键值形式的查询操作包括:

定位到存储日志信息的结构树的叶子节点,通过主键查询来读取日志信息的数据。

在上述任一项技术方案中,优选地,还包括:更新单元,用于在获取用户对配置文件的更新指令时,将更新后的配置文件替换为预设的配置文件。

在该技术方案中,将更新后的配置文件替换为预设的配置文件,定时启动管道线程,管道线程每次启动时都会读取最新的配置文件,从而更新日志信息的分流采集过程,提升了日志信息采集的灵活性。

根据本发明第三方面,还提出了一种服务器,包括上述任一项技术方案所述的日志采集系统,因此,该服务器具有和上述任一项技术方案所述的日志采集系统相同的技术效果,在此不再赘述。

通过以上技术方案,通过根据采集点的标识信息对采集点隔离,根据预设的配置文件将隔离采集点生成的日志信息进行组装并转换为指定格式,存储至服务器的日志文件系统中,实现了对日志信息进行分流处理,提高了服务器的工作效率,增加了日志信息采集的灵活性和准确性,减少了无关日志信息的干扰,提高了对日志信息的分析效率。

附图说明

图1示出了根据本发明的一个实施例的日志采集方法的示意流程图;

图2示出了根据本发明的一个实施例的日志采集系统的示意框图;

图3示出了根据本发明的实施例的终端的示意框图;

图4示出了根据本发明的另一个实施例的日志采集方法的示意流程图;

图5示出了根据本发明的另一个实施例的日志采集系统的示意框图。

具体实施方式

为了能够更清楚地理解本发明的上述目的、特征和优点,下面结合附图和具体实施方式对本发明进行进一步的详细描述。需要说明的是,在不冲突的情况下,本申请的实施例及实施例中的特征可以相互组合。

在下面的描述中阐述了很多具体细节以便于充分理解本发明,但是,本发明还可以采用第三方不同于在此描述的第三方方式来实施,因此,本发明的保护范围并不受下面公开的具体实施例的限制。

图1示出了根据本发明的一个实施例的日志采集方法的示意流程图。

如图1所示,根据本发明的一个实施例的方法,包括:步骤102,根据服务器的采集点的标识信息对目标采集点进行隔离;步骤104,根据预设的配置文件将隔离采集点生成的日志信息组合以形成信息对象集合;步骤106,根据预设的配置文件将信息对象集合转换为指定格式,并将指定格式的信息对象集合存储至服务器的日志文件系统中。

在该技术方案中,通过根据采集点的标识信息对采集点隔离,根据预设的配置文件将隔离采集点生成的日志信息进行组合以形成信息对象集合,并转换为指定格式,以存储至服务器的日志文件系统中,实现了对日志信息进行分流处理,提高了服务器的工作效率,增加了日志信息采集的灵活性和准确性,减少了无关日志信息的干扰,提高了对日志信息的分析效率。

具体地,根据服务器的采集点的标识信息对目标采集点进行隔离,目标采集点对服务器易发生故障的区域进行日志信息采集,对目标采集点进行隔离可以通过通信通道隔离或网络隔离平台实现,也即将目标采集点的日志信息与其他采集点的数据隔离通信,也即在日志信息的采集的同时,即实现了初步的日志信息的隔离,减少无关的日志信息的干扰,提高日志定位的准确性和用户的分析效率。

进一步地,将隔离采集点的日志信息组合以形成信息对象集合,对日志信息的采集类似于管道线程,按照预设的配置文件中的采集参数从各个隔离的采集点把日志信息读取出来,可以按照用户的要求将隔离的采集点的日志信息分流到不同的日志文件系统中,使服务器中各个装置间的分工更加明确,并且通过分流可以将不同采集点的日志信息进行分类,将同一采集点的日志信息进行聚合,使日志信息能够精准存储,减少无关的日志信息的干扰,提高日志定位的准确性和用户的分析效率。

另外,将信息对象集合根据预设的配置文件转换为指定格式,并以指定格式进行存储,使日志信息的组织更加灵活,处理更加便捷。

日志信息是记录系统中硬盘、软件和系统问题的信息,同时可以监视系统中发生的事件,例如包括应用程序日志、安全日志、系统日志和Web管理日志等。

例如,隔离采集点A、隔离采集点B和隔离采集点C,分别用于采集服务器的A服务区的第一故障日志信息、服务器的B服务区的第二故障日志信息和服务器的C服务区的第三故障日志信息,按照采集时间将第一故障日志信息、第二故障日志信息和第三故障日志信息以键值形式存储于应用堆栈中,并组合以形成信息对象集合,每个信息对象集合可以将采集时间段作为标识,进而可以在上述任一服务器发生故障时,确定发生故障时对应的采集时间段,以及对应的信息对象集合,提高了日志信息的故障分析效率和准确率,减少了运算量。

在上述技术方案中,优选地,在根据服务器的采集点的标识信息对目标采集点进行隔离前,还包括:预设配置文件的采集参数,其中,采集参数包括指定格式、日志信息类型、日志信息采集的触发条件、日志信息采集时段和信息对象集合的存储路径中的至少一种。

在该技术方案中,通过预设配置文件的采集参数,实现了日志信息的灵活存储,同时保证了日志信息采集的有效性,采集参数包括指定格式、日志信息类型、日志信息采集的触发条件、日志信息采集时段和信息对象集合的存储路径的至少一种,通过预设采集参数,可以将不同采集点的日志信息分流到不同的日志文件系统中。

具体地,指定格式包括W3C扩展日志文件格式、Apache访问日志格式、ArcSight公共事件格式以及基于XML的IDMEF等格式。而根据执行的应用程序不同,日志信息类型也不同,比如根据测试计划执行过程日志、全球定位系统(Global Positioning System,GPS)定位信息日志以及呼叫信息日志等,日志信息类型还可以按照调试、警告、信息、错误等具体执行方式进行区分。对于日志信息采集时段可按照固定测试时间来指示。

在上述任一项技术方案中,优选地,根据预设的配置文件将隔离采集点生成的日志信息组合以形成信息对象集合,具体包括以下步骤:查询隔离采集点生成的日志信息;根据预设的配置文件,获取与日志信息类型对应的日志信息;将获取的日志信息组合以形成信息对象集合。

在该技术方案中,通过查询日志信息并获取与预设的日志信息类型对应的日志信息,以组合以形成信息对象集合,实现了对同类日志信息的聚合,将相同格式的日志信息进行批量处理,提高了服务器的工作效率。

具体地,键值位于注册表结构链末端,包含应用程序执行时使用的实际配置信息和数据,通常包括几种数据类型(如字符串、二进制值、DWORD值等),以适应不同环境的使用需求,根据键值能够容易完成对服务器的应用堆栈中存储的日志信息的数据的增加、删除、修改和查询等操作。

其中,键值(分布数据系统中的key-value)形式的存储操作包括:

(1)执行tree搜索以定位插入数据(即日志信息的数据)所在的位置;

(2)锁定该位置的父节点;

(3)创建新的叶子节点;

(4)将叶子节点写入,这个写操作发生在内存(本申请的应用堆栈)中,并且返回一个数值,该数值决定了叶子节点写到硬盘的位置;

(5)修改父节点指向该叶子节点的引用,该父节点既持有指向内存的叶子节点的引用又持有磁盘的位置的数值;

(6)标记该父节点为“dirty”(意味着内存中的数据没有出现在磁盘中);

(7)解锁该父节点,通过节点检查操作将父节点指向的日志信息的数据写入到硬盘。

对与键值形式的查询操作包括:

定位到存储日志信息的结构树的叶子节点,通过主键查询来读取日志信息的数据。

在上述任一项技术方案中,优选地,还包括:将信息对象集合以键值的形式存储在服务器的应用堆栈中。

在该技术方案中,通过将信息对象集合以键值的形式存储在服务器的应用堆栈中,实现了对信息对象集合中的日志信息的编辑与查找。

具体地,键值位于注册表结构链末端,包含应用程序执行时使用的实际配置信息和数据,通常包括几种数据类型,以适应不同环境的使用需求,根据键值能够容易完成对服务器的应用堆栈中存储的日志信息的数据的增加、删除、修改和查询等操作。

在上述任一项技术方案中,优选地,还包括:在获取用户对配置文件的更新指令时,将更新后的配置文件替换为预设的配置文件。

在该技术方案中,将更新后的配置文件替换为预设的配置文件,定时启动管道线程,管道线程每次启动时都会读取最新的配置文件,从而更新日志信息的分流采集过程,提升了日志信息采集的灵活性。

图2示出了根据本发明的一个实施例的日志采集系统的示意框图。

如图2所示,根据本发明的一个实施例的系统200,包括:隔离单元202,用于根据服务器的采集点的标识信息对目标采集点进行隔离;组装单元204,用于根据预设的配置文件将隔离采集点生成的日志信息组合以形成信息对象集合;存储单元206,用于根据预设的配置文件将信息对象集合转换为指定格式,并将指定格式的信息对象集合存储至服务器的日志文件系统中。

在该技术方案中,通过根据采集点的标识信息对采集点隔离,根据预设的配置文件将隔离采集点生成的日志信息进行组合以形成信息对象集合,并转换为指定格式,以存储至服务器的日志文件系统中,实现了对日志信息进行分流处理,提高了服务器的工作效率,增加了日志信息采集的灵活性和准确性,减少了无关日志信息的干扰,提高了对日志信息的分析效率。

具体地,根据服务器的采集点的标识信息对目标采集点进行隔离,目标采集点对服务器易发生故障的区域进行日志信息采集,对目标采集点进行隔离可以通过通信通道隔离或网络隔离平台实现,也即将目标采集点的日志信息与其他采集点的数据隔离通信,也即在日志信息的采集的同时,即实现了初步的日志信息的隔离,减少无关的日志信息的干扰,提高日志定位的准确性和用户的分析效率。

进一步地,将隔离采集点的日志信息组合以形成信息对象集合,对日志信息的采集类似于管道线程,按照预设的配置文件中的采集参数从各个隔离的采集点把日志信息读取出来,可以按照用户的要求将隔离的采集点的日志信息分流到不同的日志文件系统中,使服务器中各个装置间的分工更加明确,并且通过分流可以将不同采集点的日志信息进行分类,将同一采集点的日志信息进行聚合,使日志信息能够精准存储,减少无关的日志信息的干扰,提高日志定位的准确性和用户的分析效率。

另外,将信息对象集合根据预设的配置文件转换为指定格式,并以指定格式进行存储,使日志信息的组织更加灵活,处理更加便捷。

日志信息是记录系统中硬盘、软件和系统问题的信息,同时可以监视系统中发生的事件,例如包括应用程序日志、安全日志、系统日志和Web管理日志等。

例如,隔离采集点A、隔离采集点B和隔离采集点C,分别用于采集服务器的A服务区的第一故障日志信息、服务器的B服务区的第二故障日志信息和服务器的C服务区的第三故障日志信息,按照采集时间将第一故障日志信息、第二故障日志信息和第三故障日志信息以键值形式存储于应用堆栈中,并组合以形成信息对象集合,每个信息对象集合可以将采集时间段作为标识,进而可以在上述任一服务器发生故障时,确定发生故障时对应的采集时间段,以及对应的信息对象集合,提高了日志信息的故障分析效率和准确率,减少了运算量。

在上述技术方案中,优选地,还包括:预设单元208,用于预设配置文件的采集参数,其中,采集参数包括指定格式、日志信息类型、日志信息采集的触发条件、日志信息采集时段和信息对象集合的存储路径中的至少一种。

在该技术方案中,通过预设配置文件的采集参数,实现了日志信息的灵活存储,同时保证了日志信息采集的有效性,采集参数包括指定格式、日志信息类型、日志信息采集的触发条件、日志信息采集时段和信息对象集合的存储路径的至少一种,通过预设采集参数,可以将不同采集点的日志信息分流到不同的日志文件系统中。

具体地,指定格式包括W3C扩展日志文件格式、Apache访问日志格式、ArcSight公共事件格式以及基于XML的IDMEF等格式,而根据执行的应用程序不同,日志信息类型也不同,比如根据测试计划执行过程日志、全球定位系统(Global Positioning System,GPS)定位信息日志以及呼叫信息日志等,日志信息类型还可以按照调试、警告、信息、错误等具体执行方式进行区分。对于日志信息采集时段可按照固定测试时间来指示。

在上述任一项技术方案中,优选地,还包括:查询单元210,用于查询隔离采集点生成的日志信息;获取单元212,用于根据预设的配置文件,获取与日志信息类型对应的日志信息;组装单元204还用于:将获取的日志信息组合以形成信息对象集合。

在该技术方案中,通过查询日志信息并获取与预设的日志信息类型对应的日志信息,以组合以形成信息对象集合,实现了对同类日志信息的聚合,将相同格式的日志信息进行批量处理,提高了服务器的工作效率。

具体地,根据预设的配置文件将日志信息组合以形成信息对象集合,配置文件用于描述日志信息的组装格式,比如按照预设的配置文件将日志信息以对应的应用程序名称、日志信息大小、日志信息采集时间以及日志信息内容等格式进行组装。

在上述任一项技术方案中,优选地,存储单元206还用于:将信息对象集合以键值的形式存储在服务器的应用堆栈中。

在该技术方案中,通过将信息对象集合以键值的形式存储在服务器的应用堆栈中,实现了对信息对象集合中的日志信息的编辑与查找。

具体地,键值位于注册表结构链末端,包含应用程序执行时使用的实际配置信息和数据,通常包括几种数据类型(如字符串、二进制值、DWORD值等),以适应不同环境的使用需求,根据键值能够容易完成对服务器的应用堆栈中存储的日志信息的数据的增加、删除、修改和查询等操作。

其中,键值(分布数据系统中的key-value)形式的存储操作包括:

(1)执行tree搜索以定位插入数据(即日志信息的数据)所在的位置;

(2)锁定该位置的父节点;

(3)创建新的叶子节点;

(4)将叶子节点写入,这个写操作发生在内存(本申请的应用堆栈)中,并且返回一个数值,该数值决定了叶子节点写到硬盘的位置;

(5)修改父节点指向该叶子节点的引用,该父节点既持有指向内存的叶子节点的引用又持有磁盘的位置的数值;

(6)标记该父节点为“dirty”(意味着内存中的数据没有出现在磁盘中);

(7)解锁该父节点,通过节点检查操作将父节点指向的日志信息的数据写入到硬盘。

对与键值形式的查询操作包括:

定位到存储日志信息的结构树的叶子节点,通过主键查询来读取日志信息的数据。

在上述任一项技术方案中,优选地,还包括:更新单元214,用于在获取用户对配置文件的更新指令时,将更新后的配置文件替换为预设的配置文件。

在该技术方案中,将更新后的配置文件替换为预设的配置文件,定时启动管道线程,管道线程每次启动时都会读取最新的配置文件,从而更新日志信息的分流采集过程,提升了日志信息采集的灵活性。

图3示出了根据本发明的实施例的服务器的示意框图。

如图3所示,根据本发明的实施例的服务器300,包括上述任一项技术方案所述的日志采集系统200,因此,该服务器300具有和上述任一项技术方案所述的日志采集系统200相同的技术效果,在此不再赘述。

图4示出了根据本发明的另一个实施例的日志采集方法的示意流程图。

如图4所示,包括:步骤402,配置日志采集点信息,并对目标采集点进行隔离;步骤404,对日志参数存储文件进行参数配置,生成预设的配置文件;步骤406,服务器将隔离采集点的日志信息转换指定格式的日志对象,并以键值形式存储在服务器的应用堆栈中;步骤408,根据预设的配置文件,从应用堆栈中获取日志对象,按时间顺序组合以形成信息对象集合;步骤410,根据预设的配置文件,按信息对象集合的存储路径,把信息对象集合转存到服务器的日志文件系统中。

在该技术方案中,通过将日志信息按照隔离的采集点暂存在应用堆栈中,待管道线程启动后,按照预设的配置文件从各个隔离的采集点集合中把日志信息读取出来,管道线程可按照使用者的要求将采集点的日志信息分流到不同的日志文件系统中,灵活组织最终的日志内容。

由于管道线程每次启动时都会读取最新的配置,所以能够实现实时动态的变更日志内容的流向,达到动态过滤和分流的功能。

本发明实施例方法中的步骤可以根据实际需要进行顺序调整、合并和删减。

本领域普通技术人员可以理解上述实施例的各种方法中的全部或部分步骤是可以通过程序来指令相关的硬件来完成,该程序可以存储于一计算机可读存储介质中,存储介质包括只读存储器(Read-Only Memory,ROM)、随机存储器(Random Access Memory,RAM)、可编程只读存储器(Programmable Read-only Memory,PROM)、可擦除可编程只读存储器(Erasable Programmable Read Only Memory,EPROM)、一次可编程只读存储器(One-time Programmable Read-Only Memory,OTPROM)、电子抹除式可复写只读存储器(Electrically-Erasable Programmable Read-Only Memory,EEPROM)、只读光盘(Compact Disc Read-Only Memory,CD-ROM)或其他光盘存储器、磁盘存储器、磁带存储器、或者能够用于携带或存储数据的计算机可读的任何其他介质。

图5示出了根据本发明的另一个实施例的日志采集系统的示意框图。

如图5所示,根据本发明的另一个实施例的日志采集系统500,包括:采集参数配置单元502,用于生成预设的配置文件和采集点信息,其中,预设的配置文件包括:指定格式、日志信息类型(如调试、警告、信息和错误等)、日志信息采集的触发条件、日志信息采集时段和所述信息对象集合的存储路径中等,采集点信息包括采集点的标识信息和采集点的描述信息;日志信息组装单元504,用于从服务器的隔离采集点采集日志信息,并根据预设的配置文件,组合以形成信息对象集合后按照格式将日志信息保存在服务器的应用堆栈中,以等待管道线程进行采集;日志管道单元506,用于从应用堆栈中读取并组织最终的日志信息,日志管道单元506需要实现调度功能,定时启动一个管道线程,根据预设的配置文件,从应用堆栈中顺序取出日志信息,并组织在一起,调用日志信息存储单元508提供的服务,将转换为指定格式的信息对象集合存储到服务器的日志文件系统中;日志信息存储单元508,用于将转换为指定格式的信息对象集合,通常是字节流形式,按照配置文件存储到服务器的日志文件系统。

本发明实施例终端中的单元可以根据实际需要进行合并、划分和删减。

以上结合附图详细说明了本发明的技术方案,考虑到相关技术中如何提高在日志定位和分析故障时的工作效率的技术问题,本发明提出了一种新的日志采集方案,通过根据采集点的标识信息对采集点隔离,根据预设的配置文件将隔离采集点生成的日志信息进行组装并转换为指定格式,以存储至服务器的日志文件系统中,实现了对日志信息进行分流处理,提高了服务器的工作效率,增加了日志信息采集的灵活性和准确性,减少了无关日志信息的干扰,提高了对日志信息的分析效率。

以上所述仅为本发明的优选实施例而已,并不用于限制本发明,对于本领域的技术人员来说,本发明可以有各种更改和变化。凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。

当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1