CN106227727A - 一种分布式系统的日志更新方法、装置与系统 - Google Patents
一种分布式系统的日志更新方法、装置与系统 Download PDFInfo
- Publication number
- CN106227727A CN106227727A CN201610515307.4A CN201610515307A CN106227727A CN 106227727 A CN106227727 A CN 106227727A CN 201610515307 A CN201610515307 A CN 201610515307A CN 106227727 A CN106227727 A CN 106227727A
- Authority
- CN
- China
- Prior art keywords
- journal file
- file
- log
- daily record
- retrieval
- 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.)
- Pending
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/10—File systems; File servers
- G06F16/18—File system types
- G06F16/1805—Append-only file systems, e.g. using logs or journals to store data
- G06F16/1815—Journaling file systems
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
- H04L67/10—Protocols in which an application is distributed across nodes in the network
- H04L67/1097—Protocols in which an application is distributed across nodes in the network for distributed storage of data in networks, e.g. transport arrangements for network file system [NFS], storage area networks [SAN] or network attached storage [NAS]
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Data Mining & Analysis (AREA)
- Databases & Information Systems (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Debugging And Monitoring (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本发明公开了一种分布式系统的日志更新方法、装置与系统包括:生成日志记录,并将多条日志记录组成日志文件;根据检索的环境变量信息生成配置文件,向分布式系统服务器发送包含有配置文件的日志检索请求;接收该分布式系统服务器的日志检索结果。本发明通过使用多个节点分别存储日志文件并由服务器统一处理日志检索请求的技术手段,允许分布式系统日志在多个节点上实时更新,降低日志数据采集、处理、检索的难度。
Description
技术领域
本发明涉及分布式系统,特别地,涉及一种分布式系统的日志更新方法、装置与系统。
背景技术
云计算环境中部署了大量的物理设备、业务系统,同时,也部署了运维,安全管理等的平台监控、管理系统,日志信息成为平台监控、管理的重要手段,海量的、来自不同设备、系统的日志信息需要被多个系统使用,同时平台中一旦设备出现问题,日志信息就成为排查故障,预防故障的重要手段。
在实现本发明的过程中,发明人发现现有技术至少存在以下问题:由于云计算数据中心内物理设备、业务系统的数据很多,不同设备、系统使用不同协议产生自身的日志信息,空间不统一,日志的存储位置分散,由于应用被分布或集群部署,每个应用将被部署在多个物理机器上,每个部署的应用实例产生自己的日志文件,此时应用的日志将被分散于每个物理机器上,传统数据处理方式针对大量的分布式日志数据采集、处理、检索困难;同时,每个实例产生自己的日志时间线,在集群部署的每个应用实例都使用自己的服务器时间作为产生日志时间,每个应用实例只写自己的日志,多个应用实例就产生了多条基于各自时间的日志文件,其非结构化数据特性提高了日志信息采集、处理、检索的难度。
针对现有技术中分布式系统日志不能实时更新的问题,目前尚无有效的解决方案。
发明内容
有鉴于此,本发明实施例的目的在于提出一种分布式系统的日志更新方法、装置与系统,允许分布式系统日志在多个节点上实时更新,降低日志数据采集、处理、检索的难度。
基于上述目的,本发明实施例提供的技术方案如下:
根据本发明实施例的一个方面,提供了一种分布式系统的日志更新方法,应用于分布式系统中的节点设备,该方法包括:
生成日志记录,并将多条日志记录组成日志文件;
根据检索的环境变量信息生成配置文件,并向分布式系统服务器发送日志检索请求;
接收该分布式系统服务器的日志检索结果。
该方法还包括:从使用可兼容格式日志的其他分布式系统接收日志文件,转化为本系统的日志格式并进行存储。
进一步地,可兼容格式为log格式或log4j格式。
进一步地,每条日志记录包括一个类型信息,环境变量信息为一种或多种类型信息的集合,每条日志记录包括的类型信息均与环境变量信息中的一种相对应。
进一步地,向分布式系统服务器发送日志检索请求的步骤包括:向分布式系统服务器发送包含有配置文件的日志检索请求。
根据本发明实施例的另一个方面,提供了一种分布式系统的日志更新方法,应用于分布式系统中的服务器,该方法包括:
建立服务器与多个节点的星型连接;
接收节点的日志检索请求,并提取出日志检索请求中的配置文件;
动态加载配置文件;
根据配置文件中的环境变量信息检索日志文件中的每条日志记录,并返回检索结果。
其中,配置文件存储为可动态加载的XML格式;接收节点的日志检索请求后进一步包括:动态加载配置文件中的环境变量信息,并根据环境变量信息检索日志文件中的每条日志记录。
进一步地,每个日志文件中包括多条日志记录,每条日志记录包括一个类型信息,环境变量信息为一种或多种类型信息的集合,每条日志记录包括的类型信息均与环境变量信息中的一种相对应。
进一步地,根据配置文件中的环境变量信息检索日志记录的步骤包括:根据日志检索请求访问每个节点,根据配置文件检索每条日志记录,并将检索结果反馈到发出日志检索请求的节点。
进一步地,根据配置文件检索每条日志记录时,根据配置文件中的环境变量信息与每条日志记录步骤中还包括:根据配置文件中的环境变量信息与每条日志记录的类型信息进行比对,并将类型信息落入环境变量信息集合范围的多条日志记录进行反馈。
根据本发明的另一个方面,提供了一种分布式系统的日志更新装置,作为一个实施例,包括:
日志文件模块,用于生成日志记录,将日志记录组成日志文件;
配置文件模块,用于基于检索条件获取检索的环境变量信息,根据检索的环境变量信息生成配置文件,并向分布式系统服务器发送日志检索请求;
接收模块,用于接收分布式系统服务器返回的日志检索结果。
进一步地,日志文件模块还用于:获取非本地的日志文件,转化为本地的日志格式并进行存储,其中,非本地的日志文件为可兼容格式。
进一步地,日志记录包含类型信息,日志文件模块还用于:根据类型信息对日志记录进行分类并组成日志文件,其中,日志文件包含两个以上,且日志文件的类型与类型信息一一对应。
根据本发明的另一个方面,提供了一种分布式系统的日志更新装置,与多个节点连接,用于根据日志检索请求访问多个节点获取日志文件,作为一个实施例,包括:
初始化模块,用于建立与多个节点的连接;
提取模块,用于接收节点的日志检索请求,提取日志检索请求中的配置文件;
动态加载模块,用于动态加载配置文件,根据配置文件中的环境变量信息检索日志文件中的日志记录,并返回检索结果。
进一步地,日志记录包含类型信息,日志文件包含两个以上,且日志文件的类型与类型信息一一对应。
进一步地,环境变量信息为一种或多种类型信息的集合,动态加载模块还用于:
将日志文件的类型信息与配置文件中的环境变量信息进行匹配,确定日志文件的类型信息属于环境变量信息的日志文件,将日志文件对应的的日志记录作为检索结果。
根据本发明实施例的另一个方面,提供了一种分布式系统的日志更新系统,包括上述任意实施例所述的应用于节点设备的分布式系统的日志更新装置与上述任意实施例所述的应用于服务器的分布式系统的日志更新装置。
从上面所述可以看出,本发明实施例提供的技术方案通过使用多个节点分别存储日志文件并由服务器统一处理日志检索请求的技术手段,允许分布式系统日志在多个节点上实时更新,降低日志数据采集、处理、检索的难度。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为本发明实施例的分布式系统中节点设备的日志更新方法的流程图;
图2为本发明实施例的分布式系统中节点设备的日志更新方法的详细流程图;
图3为本发明实施例的分布式系统中服务器的日志更新方法的流程图;
图4为本发明实施例的分布式系统中服务器的日志更新方法的详细流程图;
图5为本发明实施例的分布式系统的日志更新装置的结构图;
图6为本发明实施例的分布式系统的日志更新装置的结构图;
图7为本发明实施例的分布式系统的日志更新系统的结构图;
图8为本发明实施例的分布式系统的日志更新系统的详细结构图。
具体实施方式
为使本发明的目的、技术方案和优点更加清楚明白,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进一步进行清楚、完整、详细地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员所获得的所有其他实施例,都属于本发明保护的范围。
根据本发明的一个实施例,提供了一种分布式系统的日志更新方法,应用于分布式系统中的节点设备。
如图1所示,根据本发明实施例提供的分布式系统的日志更新方法包括:
步骤S101,生成日志记录,并将多条日志记录组成日志文件。
节点在正常工作过程中会产生操作记录,这些操作记录会作为日志记录被节点存储在日志文件中。在步骤S101中,日志记录以面向过程的形式记载了节点的每次操作,内容包括操作事件的类型(可能是常规信息、警告、错误、审核成功、审核失败等等)、操作事件的来源(即是节点内哪一个部分执行了该操作)、操作事件的权限(即谁该对该操作事件负责)、操作事件发生的时间与日期、操作事件的具体附加记录等等。一个日志记录记载了该操作中的所有信息,可以通过阅读日志记录来了解操作事件的情况。
步骤S102,基于检索条件获取检索的环境变量信息,根据检索的环境变量信息生成配置文件,并向分布式系统服务器发送日志检索请求。
当节点进行检索时,并不只是直接检索本地节点自身的日志文件。为了达到交互更新的目的,新生成的日志文件对于检索而言是实时的,因此节点检索的对象是系统内的所有节点。当节点提出检索请求时,首先需要检索方(即位于节点的检索用户)给出检索条件,节点将检索条件转化为检索向量空间中的环境变量信息,并根据环境变量信息生成一个检索的配置文件,再将该配置文件置入检索请求中,并发送到服务器。本技术方案能够将检索查询行为实时化,不再受到现有技术中本地查询的延迟更新效果影响,从而达到分布式系统日志在多个节点上实时更新的目的。
步骤S103,接收所述分布式系统服务器返回的日志检索结果。
当分布式系统服务器检索完成后,节点接收所述分布式系统服务器返回的日志检索结果,所述检索结果就是节点提出检索请求时的实时结果,多个节点通过获得实时结果以达到交互更新的效果。
本发明实施例通过使用多个节点分别存储日志文件并由服务器统一处理日志检索请求的技术手段,使得分布式系统日志能在多个节点上实时更新,并降低日志数据采集、处理、检索的难度,提高了工作效率。
如图2所示,根据本发明的另一个实施例,提供了另一种分布式系统的日志更新方法,应用于分布式系统中的节点设备。
步骤S101,生成日志记录,并将多条日志记录组成日志文件。
节点在正常工作过程中会产生操作记录,这些操作记录会作为日志记录被节点存储在日志文件中。在步骤S101中,日志记录以面向过程的形式记载了节点的每次操作,内容包括操作事件的类型(可能是常规信息、警告、错误、审核成功、审核失败等等)、操作事件的来源(即是节点内哪一个部分执行了该操作)、操作事件的权限(即谁该对该操作事件负责)、操作事件发生的时间与日期、操作事件的具体附加记录等等。一个日志记录记载了该操作中的所有信息,可以通过阅读日志记录来了解操作事件的情况。
具体地,日志文件是日志记录的集合,一定数量的日志记录被整合并以日志文件的形式储存。被整合的日志记录之间可能具有一定共同点,如,警告日志记录被整合到一日志文件中,错误日志记录被整合到另一日志文件中,这种存储方式方便服务器以事件类型为条件进行检索;也可以不刻意进行分类,完全按照操作顺序储存。不同的存储方案应对不同的检索条件时能够增加检索速度、缩短检索时间,如事件类型为条件进行检索时,检索到了事件类型为条件进行存储的日志,可以快速判断日志文件是否落入检索范围,而不用依次检索日志文件内的每条日志记录。
可选地,可以从使用可兼容格式日志的其他分布式系统接收日志文件,转化为本系统的日志格式并进行存储。其中,可兼容格式可以为log格式或log4j格式。
作为日志文件的另一种来源,节点不仅能生成记载自身操作事件的日志文件,还能从其他系统获取已经生成的日志文件,并存储在节点中供检索之用。其他系统生成的日志文件并不是节点在正常工作过程中产生的操作记录记载而成的,因此也就不会遵从本节点的日志文件格式进行记录,而多种日志格式会为日志检索带来额外的成本。因此,节点会在接收到其他系统的日志文件后尝试识别该日志文件,若节点能够识别该日志文件,则说明该日志文件是以节点可兼容的格式(如log或log4j)进行存储的。节点能够将log或log4j格式的日志文件转化为本节点使用的日志格式进行储存,使得外来的日志文件能够像本节点生成的日志文件一样被检索。这使得节点能够存储外来的日志文件,并对外来文件进行检索。
步骤S102,根据检索的环境变量信息生成配置文件,并向分布式系统服务器发送日志检索请求。
当节点进行检索时,并不只是直接检索本地节点自身的日志文件。为了达到交互更新的目的,新生成的日志文件对于检索而言是实时的,因此节点检索的对象是系统内的所有节点。当节点提出检索请求时,首先需要检索方(即位于节点的检索者)给出检索条件,节点将检索条件转化为检索向量空间中的环境变量信息,并根据环境变量信息生成一个检索的配置文件,再将该配置文件置入检索请求中,并通过浏览器发送到服务器。这种技术方案能够将检索查询行为实时化,不再受到现有技术中本地查询的延迟更新效果影响,从而达到分布式系统日志在多个节点上实时更新的目的。
步骤S103,接收所述分布式系统服务器返回的日志检索结果。
当分布式系统服务器检索完成后,节点接收所述分布式系统服务器返回的日志检索结果,检索结果就是节点提出检索请求时的实时结果,多个节点通过获得实时结果以达到交互更新的效果。
本发明实施例通过使用多个节点分别存储日志文件并由服务器统一处理日志检索请求的技术手段,使得分布式系统日志能在多个节点上实时更新,并且更好地降低了日志数据采集、处理、检索的难度,提高了工作效率。
根据本发明的另一个实施例,提供了一种分布式系统的日志更新方法,应用于分布式系统中的服务器。
如图3所示,根据本发明实施例提供的分布式系统的日志更新方法包括:
步骤S201,建立服务器与多个节点的连接。
服务器是日志交互更新系统的中枢,为了在日志检索过程中能与每个节点都进行保时的直接通信,服务器需要与每个节点都建立连接。
步骤S202,接收节点的日志检索请求,并提取出日志检索请求中的配置文件。
服务器通过上述网络直接接收每个节点的检索请求。对于每个检索请求,服务器首先从检索请求中提取出配置文件,并动态加载该配置文件,获得环境变量信息。
步骤S203,动态加载配置文件。
为了方便动态加载,配置文件应当使用具有可扩展性与标记效果的格式(如XML)。
步骤S204,根据配置文件中的环境变量信息检索日志文件中的每条日志记录,并返回检索结果。
服务器访问上述网络范围内的所有节点,并在每个节点上访问其所有日志文件,并根据环境变量信息在检索向量空间中对每一条日志记录进行检索。任何被检索到落入环境变量信息范围的日志记录会被回传到服务器,当所有日志文件的检索都已经完成时,服务器将所有接收到的日志记录反馈到检索请求节点的浏览器上。
本发明实施例通过使用多个节点分别存储日志文件并由服务器统一处理日志检索请求的技术手段,使得分布式系统日志能在多个节点上实时更新,并降低日志数据采集、处理、检索的难度,提高了工作效率。
如图4所示,根据本发明的另一个实施例,提供了另一种分布式系统的日志更新方法,应用于分布式系统中的服务器。
步骤S201,建立服务器与多个节点的连接。
服务器是日志交互更新系统的中枢,为了在日志检索过程中能与每个节点都进行保时的直接通信,服务器需要与每个节点都建立直接连接,形成网络。
步骤S202,接收节点的日志检索请求,并提取出日志检索请求中的配置文件。
服务器通过上述网络直接接收每个节点的检索请求。对于每个检索请求,服务器首先从检索请求中提取出配置文件,并动态加载该配置文件,获得环境变量信息。
步骤S203,动态加载配置文件。
在通常系统的日志检索中,一旦环境变量信息被确定,则会持续被多个检索进程占用,而被进程占用的环境变量信息则是静态的,所有日志检索行为都将以静态的环境变量信息为准;只有当服务器中止一切检索进程时,才能修改环境变量信息,本质上等同于重启服务器,这使得检索的工作效率极为低下。然而,使用动态加载配置文件的方式可以在不中断检索进程的情况下刷新环境变量信息。每当服务器动态加载配置文件时,配置文件中的环境变量信息会被释放到一个指定地址,这个指定地址存储着上一个配置文件中的环境变量信息;另一方面,持续被多个检索进程占用的进程中撰写的实际上是一个指向环境变量信息那个指定地址的指针,在动态加载配置文件的过程中,指针本身不需要被修改,也就避免了中止检索进程的问题。这种更新方式避免了日志检索中环境变量信息静态化的问题。
为了方便动态加载,配置文件应当使用具有可扩展性与标记效果的格式(如XML)。
步骤S204,根据配置文件中的环境变量信息检索日志文件中的每条日志记录,并返回检索结果。
服务器访问上述网络范围内的所有节点,并在每个节点上访问其所有日志文件,并根据环境变量信息在检索向量空间中对每一条日志记录进行检索。
在检索时,首先,服务器将日志文件的类型信息与所述配置文件中的环境变量信息进行匹配,确定日志文件的类型信息属于环境变量信息的日志文件;然后,将日志文件对应的的日志记录作为检索结果。
环境变量信息中可以包括一条或多条检索条件,并通过逻辑运算符连接。例如,环境变量信息指向检索向量空间中的警告与错误类型,则会在日志文件中检索警告类型或错误类型的日志记录;环境变量信息指向检索向量空间中的常规信息类型与当日时间,则会在日志文件中检索当日记录的常规信息。任何被检索到落入环境变量信息范围的日志记录会被回传到服务器,当所有日志文件的检索都已经完成时,服务器将所有接收到的日志记录反馈到检索请求节点的浏览器上。
本发明实施例通过使用多个节点分别存储日志文件并由服务器统一处理日志检索请求的技术手段,使得分布式系统日志能在多个节点上实时更新,并降低日志数据采集、处理、检索的难度,更好地提高工作效率。
根据本发明的另一个实施例,提供了一种分布式系统的日志更新系统用节点,用于生成、存储日志文件并发送日志检索请求。
如图5所示,根据本发明实施例提供的分布式系统的日志更新装置,连接至服务器,用于生成、存储日志文件并发送日志检索请求,包括:
日志文件模块,用于生成日志记录,将日志记录组成日志文件。
配置文件模块,用于基于检索条件获取检索的环境变量信息,根据检索的环境变量信息生成配置文件,并向分布式系统服务器发送日志检索请求。
接收模块,用于接收分布式系统服务器返回的日志检索结果。
本发明实施例通过使用多个节点分别存储日志文件并由服务器统一处理日志检索请求的技术手段,使得分布式系统日志能在多个节点上实时更新,并降低日志数据采集、处理、检索的难度,提高了工作效率。
根据本发明的另一个实施例,提供了另一种分布式系统的日志更新装置,连接至服务器,用于生成、存储日志文件并发送日志检索请求包括:
日志文件模块,用于生成日志记录,将日志记录组成日志文件。日志文件模块在生成日志记录之前还包括:获取非本地的日志文件,转化为本地的日志格式并进行存储,其中,非本地的日志文件为可兼容格式。日志记录包含类型信息,日志文件模块将日志记录组成日志文件包括:根据类型信息对日志记录进行分类并组成日志文件,其中,日志文件包含两个以上,且日志文件的类型与类型信息一一对应。
配置文件模块,用于基于检索条件获取检索的环境变量信息,根据检索的环境变量信息生成配置文件,并向分布式系统服务器发送日志检索请求。
浏览器模块,用于接收分布式系统服务器返回的日志检索结果。
可兼容格式为log格式或log4j格式。节点在正常工作过程中会产生操作记录,这些操作记录会作为日志记录被节点存储在日志文件中。日志记录以面向过程的形式记载了节点的每次操作,内容包括操作事件的类型(可能是常规信息、警告、错误、审核成功、审核失败等等)、操作事件的来源(即是节点内哪一个部分执行了该操作)、操作事件的权限(即谁该对该操作事件负责)、操作事件发生的时间与日期、操作事件的具体附加记录等等。一个日志记录记载了该操作中的所有信息,可以通过阅读日志记录来了解操作事件的情况。
日志文件是日志记录的集合,一定数量的日志记录被整合并以日志文件的形式储存。被整合的日志记录之间可能具有一定共同点,如,警告日志记录被整合到一日志文件中,错误日志记录被整合到另一日志文件中,这种存储方式方便服务器以事件类型为条件进行检索;也可以不刻意进行分类,完全按照操作顺序储存。
另一方面,节点不仅能生成记载自身操作事件的日志文件,还能从其他系统获取已经生成的日志文件,并存储在节点中供检索之用。其他系统生成的日志文件并不是节点在正常工作过程中产生的操作记录记载而成的,因此也就不会遵从本节点的日志文件格式进行记录,而多种日志格式会为日志检索带来额外的成本。因此,节点会在接收到其他系统的日志文件后尝试识别该日志文件,若节点能够识别该日志文件,则说明该日志文件是以节点可兼容的格式(如log或log4j)进行存储的。节点能够将log或log4j格式的日志文件转化为本节点使用的日志格式进行储存,使得外来的日志文件能够像本节点生成的日志文件一样被检索。
当节点进行检索时,并不只是直接检索本地节点自身的日志文件。为了达到交互更新的目的,新生成的日志文件对于检索而言是实时的,因此节点检索的对象是系统内的所有节点,而这个工作交给服务器来执行,节点本身仅需要通过浏览器向服务器发送检索请求并等待接收服务器的检索结果即可。当节点提出检索请求时,首先需要检索方给出检索条件,节点将检索条件转化为检索向量空间中的环境变量信息,并根据环境变量信息生成一个检索的配置文件,再将该配置文件置入检索请求中,并通过浏览器发送到服务器。当服务器检所完成后,节点可以通过浏览器接收到检索结果,这个检索结果就是节点提出检索请求时的实时结果,多个节点通过获得实时结果以达到交互更新的效果。
本发明实施例通过使用多个节点分别存储日志文件并由服务器统一处理日志检索请求的技术手段,使得分布式系统日志能在多个节点上实时更新,并降低日志数据采集、处理、检索的难度,提高了工作效率。
根据本发明的另一个实施例,提供了一种分布式系统的日志更新系统用服务器,服务器与多个节点星型连接,用于根据日志检索请求访问多个节点获取日志文件。
如图6所示,根据本发明实施例提供的分布式系统的日志更新装置,与多个节点连接,用于根据日志检索请求访问多个节点获取日志文件,包括:
初始化模块,用于建立与多个节点的连接;
提取模块,用于接收节点的日志检索请求,提取日志检索请求中的配置文件;
动态加载模块,用于动态加载配置文件,根据配置文件中的环境变量信息检索日志文件中的日志记录,并返回检索结果。
其中,日志记录包含类型信息,日志文件包含两个以上,且日志文件的类型与类型信息一一对应。
并且,环境变量信息为一种或多种类型信息的集合,动态加载模块根据配置文件中的环境变量信息检索日志文件中的日志记录还包括:
将日志文件的类型信息与配置文件中的环境变量信息进行匹配,确定日志文件的类型信息属于环境变量信息的日志文件,将日志文件对应的的日志记录作为检索结果。
本发明实施例通过使用多个节点分别存储日志文件并由服务器统一处理日志检索请求的技术手段,使得分布式系统日志能在多个节点上实时更新,并降低日志数据采集、处理、检索的难度,提高了工作效率。
根据本发明的另一个实施例,提供了另一种分布式系统的日志更新装置,与多个节点连接,用于根据日志检索请求访问多个节点获取日志文件包括:
初始化模块,用于建立与多个节点的连接。
提取模块,用于接收节点的日志检索请求,提取日志检索请求中的配置文件。
动态加载模块,用于动态加载配置文件,根据配置文件中的环境变量信息检索日志文件中的日志记录,并返回检索结果。日志记录包含类型信息,日志文件包含两个以上,且日志文件的类型与类型信息一一对应。环境变量信息为一种或多种类型信息的集合,动态加载模块根据配置文件中的环境变量信息检索日志文件中的日志记录还包括:将日志文件的类型信息与配置文件中的环境变量信息进行匹配,确定日志文件的类型信息属于环境变量信息的日志文件,将日志文件对应的的日志记录作为检索结果。
配置文件存储为可动态加载的XML格式;服务器接收到包含配置文件的日志检索请求后动态加载配置文件中的环境变量信息,并根据环境变量信息检索日志记录。
每条日志记录包括一个类型信息,环境变量信息为一种或多种类型信息的集合,每条日志记录包括的类型信息均与环境变量信息中的一种相对应。
进一步地,服务器根据配置文件检索每个节点上每个日志文件中的每条日志记录时,根据配置文件中的环境变量信息与每条日志记录的类型信息进行比对,并将类型信息落入环境变量信息集合范围的多条日志记录通过Socket接口反馈到服务器。
服务器是日志交互更新系统的中枢,为了在日志检索过程中能与每个节点都进行保时的直接通信,服务器需要与每个节点之间都建立直接连接,形成星型网络。
服务器通过星型网络直接接收每个节点的检索请求。对于每个检索请求,服务器首先从检索请求中提取出配置文件,并动态加载该配置文件,获得环境变量信息。在通常系统的日志检索中,一旦环境变量信息被确定,则会持续被多个检索进程占用,而被进程占用的环境变量信息则是静态的,所有日志检索行为都将以静态的环境变量信息为准;只有当服务器中止一切检索进程时,才能修改环境变量信息,本质上等同于重启服务器,这使得检索的工作效率极为低下。然而,使用动态加载配置文件的方式可以在不中断检索进程的情况下刷新环境变量信息。每当服务器动态加载配置文件时,配置文件中的环境变量信息会被释放到一个指定地址,这个指定地址存储着上一个配置文件中的环境变量信息;另一方面,持续被多个检索进程占用的进程中撰写的实际上是一个指向环境变量信息那个指定地址的指针,在动态加载配置文件的过程中,指针本身不需要被修改,也就避免了中止检索进程的问题。这种更新方式避免了日志检索中环境变量信息静态化的问题。
为了方便动态加载,配置文件应当使用具有可扩展性与标记效果的格式(如XML)。服务器访问其星型网络范围内的所有节点,并在每个节点上访问其所有日志文件,并根据环境变量信息在检索向量空间中对每一条日志记录进行检索。环境变量信息中可以包括一条或多条检索条件,并通过逻辑运算符连接。例如,环境变量信息指向检索向量空间中的警告与错误类型,则会在日志文件中检索警告类型或错误类型的日志记录;环境变量信息指向检索向量空间中的常规信息类型与当日时间,则会在日志文件中检索当日记录的常规信息。任何被检索到落入环境变量信息范围的日志记录会被回传到服务器,当所有日志文件的检索都已经完成时,服务器将所有接收到的日志记录反馈到检索请求节点的浏览器上。
本发明实施例通过使用多个节点分别存储日志文件并由服务器统一处理日志检索请求的技术手段,使得分布式系统日志能在多个节点上实时更新,并降低日志数据采集、处理、检索的难度,提高了工作效率。
本发明实施例的另一个方面,还提供了一种电子设备,包括一个或多个处理器,所述一个或多个处理器用于执行上面任意一个或多个实施例所述的方法中所限定的步骤;以及用于存储操作指令的存储器,其中,所述一个或多个处理器被配置为从所述存储器中获取操作指令并执行:
生成日志记录,并将多条日志记录组成日志文件;
根据检索的环境变量信息生成配置文件,并向分布式系统服务器发送日志检索请求;
接收该分布式系统服务器的日志检索结果。
本发明实施例的另一个方面,还提供了一种电子设备,包括一个或多个处理器,所述一个或多个处理器用于执行上面任意一个或多个实施例所述的方法中所限定的步骤;以及用于存储操作指令的存储器,其中,所述一个或多个处理器被配置为从所述存储器中获取操作指令并执行:
建立服务器与多个节点的连接;
接收节点的日志检索请求,并提取出日志检索请求中的配置文件;
动态加载配置文件;
根据配置文件中的环境变量信息检索日志文件中的每条日志记录,并返回检索结果。
根据本发明实施例的另一个方面,提供了一种分布式系统的日志更新系统,包括上述任意实施例所述的应用于节点设备的分布式系统的日志更新装置与上述任意实施例所述的应用于服务器的分布式系统的日志更新装置。
下面根据具体实施例进一步阐述本发明的技术方案。
图7与图8示出的是分布式系统的日志更新系统的详细结构图。如图7与图8所示,多个节点1(在图2中呈现出6个)与服务器2之间以星型结构连接。
节点1会产生并存储日志。每个节点1在系统运行时,其自身的工作操作会产生操作记录,操作记录以日志记录的形式被记载;日志记录被编入日志文件中,日志文件被储存于所在节点1。另一方面,每个节点1可能通过API接口连接至其他日志系统并与其产生信息交互,当节点1从其他日志系统接收到log或log4j格式的日志文件时,节点1能够将该log或log4j格式的日志文件转化为本系统的通用格式日志文件,并将日志文件储存在所在节点1。
节点1检索日志时使用了B/S架构。通过节点1进行日志检索时,首先节点1获取日志的检索条件,将检索条件写入配置文件中。特别地,检索条件中对于日志条目类别的限定被写入配置文件的环境变量信息中,环境变量信息明示了想要检索的指定日志条目类别。配置文件被保存为XML格式后置于日志检索请求中,该节点1的浏览器通过Socket接口将日志检索请求从节点1传送至服务器2。服务器2接收日志检索请求,获取XML格式的配置文件,并利用XML格式的特性将配置文件动态加载到服务器2上。服务器2访问各节点1,根据配置文件中的环境变量信息在各节点1储存的日志文件中检索出类别落入环境变量信息范围内的日志条目,并将这些被检索出的条目反馈到提出日志检索请求的节点1的浏览器上。
综上所述,借助于本发明的上述技术方案,通过使用多个节点分别存储日志文件并由服务器统一处理日志检索请求的技术手段,允许分布式系统日志在多个节点上实时更新,降低日志数据采集、处理、检索的难度;同时,服务器动态加载配置文件的技术手段使得日志检索请求被实时处理,也从另一个方面保证了检索覆盖了实时更新的范围。
所属领域的普通技术人员应当理解:以上所述仅为本发明的具体实施例而已,并不用于限制本发明,凡在本发明的精神和原则之内,所做的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。
Claims (13)
1.一种分布式系统的日志更新方法,其特征在于,包括:
生成日志记录,将所述日志记录组成日志文件;
基于检索条件获取检索的环境变量信息,根据所述检索的环境变量信息生成配置文件,并向分布式系统服务器发送日志检索请求;
接收所述分布式系统服务器返回的日志检索结果。
2.根据权利要求1所述的方法,其特征在于,在所述生成日志记录之前还包括:获取非本地的日志文件,转化为本地的日志格式并进行存储,其中,所述非本地的日志文件为可兼容格式。
3.根据权利要求1或2所述的方法,其特征在于,所述日志记录包含类型信息,将所述日志记录组成日志文件包括:
根据所述类型信息对所述日志记录进行分类并组成日志文件,其中,所述日志文件包含两个以上,且所述日志文件的类型与所述类型信息一一对应。
4.一种分布式系统的日志更新方法,其特征在于,包括:
建立与多个节点的连接;
接收节点的日志检索请求,提取所述日志检索请求中的配置文件;
动态加载所述配置文件,根据所述配置文件中的环境变量信息检索日志文件中的日志记录,并返回检索结果。
5.根据权利要求4所述的方法,其特征在于,所述日志记录包含类型信息,所述日志文件包含两个以上,且所述日志文件的类型与所述类型信息一一对应。
6.根据权利要求5所述的方法,其特征在于,所述环境变量信息为一种或多种所述类型信息的集合,所述根据所述配置文件中的环境变量信息检索日志文件中的日志记录还包括:
将所述日志文件的类型信息与所述配置文件中的环境变量信息进行匹配,确定所述日志文件的类型信息属于所述环境变量信息的所述日志文件,将所述日志文件对应的的日志记录作为检索结果。
7.一种分布式系统的日志更新装置,其特征在于,包括:
日志文件模块,用于生成日志记录,将所述日志记录组成日志文件;
配置文件模块,用于基于检索条件获取检索的环境变量信息,根据所述检索的环境变量信息生成配置文件,并向分布式系统服务器发送日志检索请求;
接收模块,用于接收所述分布式系统服务器返回的日志检索结果。
8.根据权利要求7所述的装置,其特征在于,所述日志文件模块还用于:获取非本地的日志文件,转化为本地的日志格式并进行存储,其中,所述所述非本地的日志文件为可兼容格式。
9.根据权利要求8所述的装置,其特征在于,所述日志记录包含类型信息,所述日志文件模块还用于:根据所述类型信息对所述日志记录进行分类并组成日志文件,其中,所述日志文件包含两个以上,且所述日志文件的类型与所述类型信息一一对应。
10.一种分布式系统的日志更新装置,其特征在于,与多个节点连接,用于根据日志检索请求访问多个节点获取日志文件,包括:
初始化模块,用于建立与多个节点的连接;
提取模块,用于接收节点的日志检索请求,提取所述日志检索请求中的配置文件;
动态加载模块,用于动态加载所述配置文件,根据所述配置文件中的环境变量信息检索日志文件中的日志记录,并返回检索结果。
11.根据权利要求10所述的装置,其特征在于,所述日志记录包含类型信息,所述日志文件包含两个以上,且所述日志文件的类型与所述类型信息一一对应。
12.根据权利要求11所述的装置,其特征在于,所述环境变量信息为一种或多种所述类型信息的集合,所述动态加载模块还用于:
将所述日志文件的类型信息与所述配置文件中的环境变量信息进行匹配,确定所述日志文件的类型信息属于所述环境变量信息的所述日志文件,将所述日志文件对应的的日志记录作为检索结果。
13.一种分布式系统的日志更新系统,其特征在于,包括如权利要求7-9中任意一项所述的分布式系统的日志更新装置与如权利要求10-12中任意一项所述的分布式系统的日志更新装置。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201610515307.4A CN106227727A (zh) | 2016-06-30 | 2016-06-30 | 一种分布式系统的日志更新方法、装置与系统 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201610515307.4A CN106227727A (zh) | 2016-06-30 | 2016-06-30 | 一种分布式系统的日志更新方法、装置与系统 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN106227727A true CN106227727A (zh) | 2016-12-14 |
Family
ID=57519501
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201610515307.4A Pending CN106227727A (zh) | 2016-06-30 | 2016-06-30 | 一种分布式系统的日志更新方法、装置与系统 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN106227727A (zh) |
Cited By (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN108462598A (zh) * | 2017-02-21 | 2018-08-28 | 阿里巴巴集团控股有限公司 | 一种日志生成方法、日志分析方法及装置 |
CN109672546A (zh) * | 2017-10-16 | 2019-04-23 | 比亚迪股份有限公司 | 日志生成方法、应用服务器、日志服务器及日志生成系统 |
CN110196832A (zh) * | 2019-06-04 | 2019-09-03 | 北京百度网讯科技有限公司 | 用于获取快照信息的方法及装置 |
CN111209023A (zh) * | 2020-01-08 | 2020-05-29 | 百度在线网络技术(北京)有限公司 | 技能服务的更新方法、装置、电子设备及可读存储介质 |
CN111737207A (zh) * | 2020-06-19 | 2020-10-02 | 北京金山云网络技术有限公司 | 展示、归集分布式系统中服务节点的日志的方法和装置 |
CN113535528A (zh) * | 2021-06-29 | 2021-10-22 | 中国海洋大学 | 面向分布式图迭代计算作业的日志管理系统、方法及介质 |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103177116A (zh) * | 2013-04-08 | 2013-06-26 | 国电南瑞科技股份有限公司 | 一种基于两级索引的分布式日志处理和查询方法 |
CN103221949A (zh) * | 2010-07-27 | 2013-07-24 | 甲骨文国际公司 | Mysql数据库的异构的基于日志的复制 |
CN103853743A (zh) * | 2012-11-29 | 2014-06-11 | 百度在线网络技术(北京)有限公司 | 一种分布式系统及其日志查询方法 |
CN105205144A (zh) * | 2015-09-18 | 2015-12-30 | 北京百度网讯科技有限公司 | 用于数据诊断优化的方法和系统 |
CN105260399A (zh) * | 2015-09-17 | 2016-01-20 | 西安未来国际信息股份有限公司 | 一种分布式日志的采集和检索方法 |
-
2016
- 2016-06-30 CN CN201610515307.4A patent/CN106227727A/zh active Pending
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103221949A (zh) * | 2010-07-27 | 2013-07-24 | 甲骨文国际公司 | Mysql数据库的异构的基于日志的复制 |
CN103853743A (zh) * | 2012-11-29 | 2014-06-11 | 百度在线网络技术(北京)有限公司 | 一种分布式系统及其日志查询方法 |
CN103177116A (zh) * | 2013-04-08 | 2013-06-26 | 国电南瑞科技股份有限公司 | 一种基于两级索引的分布式日志处理和查询方法 |
CN105260399A (zh) * | 2015-09-17 | 2016-01-20 | 西安未来国际信息股份有限公司 | 一种分布式日志的采集和检索方法 |
CN105205144A (zh) * | 2015-09-18 | 2015-12-30 | 北京百度网讯科技有限公司 | 用于数据诊断优化的方法和系统 |
Cited By (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN108462598A (zh) * | 2017-02-21 | 2018-08-28 | 阿里巴巴集团控股有限公司 | 一种日志生成方法、日志分析方法及装置 |
CN109672546A (zh) * | 2017-10-16 | 2019-04-23 | 比亚迪股份有限公司 | 日志生成方法、应用服务器、日志服务器及日志生成系统 |
CN110196832A (zh) * | 2019-06-04 | 2019-09-03 | 北京百度网讯科技有限公司 | 用于获取快照信息的方法及装置 |
CN111209023A (zh) * | 2020-01-08 | 2020-05-29 | 百度在线网络技术(北京)有限公司 | 技能服务的更新方法、装置、电子设备及可读存储介质 |
CN111737207A (zh) * | 2020-06-19 | 2020-10-02 | 北京金山云网络技术有限公司 | 展示、归集分布式系统中服务节点的日志的方法和装置 |
CN111737207B (zh) * | 2020-06-19 | 2024-04-09 | 北京金山云网络技术有限公司 | 展示、归集分布式系统中服务节点的日志的方法和装置 |
CN113535528A (zh) * | 2021-06-29 | 2021-10-22 | 中国海洋大学 | 面向分布式图迭代计算作业的日志管理系统、方法及介质 |
CN113535528B (zh) * | 2021-06-29 | 2023-08-08 | 中国海洋大学 | 面向分布式图迭代计算作业的日志管理系统、方法及介质 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN106227727A (zh) | 一种分布式系统的日志更新方法、装置与系统 | |
CN104717094B (zh) | 管理服务器和管理服务器的控制方法 | |
CA2919839C (en) | Virtual computing instance migration | |
US10491453B2 (en) | Correlating computing network events | |
CN104899269A (zh) | 一种访问网址链接的方法及装置 | |
JPH10232810A (ja) | クライアント/サーバ計算機システムにおける切断状態ライトの許可装置及び方法 | |
CN106021068B (zh) | 服务接口的监控方法和监控系统 | |
CN108092936A (zh) | 一种基于插件架构的主机监控系统 | |
CN107329991A (zh) | 一种列表页访问和展示方法及其系统 | |
US9461884B2 (en) | Information management device and computer-readable medium recorded therein information management program | |
WO2023040143A1 (zh) | 云服务的资源编排方法、装置、设备及存储介质 | |
US20230134277A1 (en) | Secure debugging in multitenant cloud environment | |
CN113792274A (zh) | 一种信息管理方法、管理系统和存储介质 | |
US9104573B1 (en) | Providing relevant diagnostic information using ontology rules | |
CN109271564A (zh) | 保单查询方法及设备 | |
CN105787359B (zh) | 进程守护方法和装置 | |
CN105354506B (zh) | 隐藏文件的方法和装置 | |
US20090112704A1 (en) | Management tool for efficient allocation of skills and resources | |
WO2016043780A1 (en) | Business resource modeling | |
CN107918550A (zh) | 一种在Linux系统下审计USB设备历史使用情况的方法 | |
CN115617612A (zh) | 一种日志上报方法、装置、计算机设备和存储介质 | |
CN115811481A (zh) | 一种交互服务测试方法、装置、计算机设备及存储介质 | |
US20140379762A1 (en) | Content management system | |
CN116975102A (zh) | 敏感数据监测方法、系统、电子设备及存储介质 | |
CN113760450A (zh) | 私有云虚拟机自动安全管理方法、装置、终端及存储介质 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
WD01 | Invention patent application deemed withdrawn after publication |
Application publication date: 20161214 |
|
WD01 | Invention patent application deemed withdrawn after publication |