CN102667718A - 处理网络事件的方法和系统 - Google Patents

处理网络事件的方法和系统 Download PDF

Info

Publication number
CN102667718A
CN102667718A CN2010800485750A CN201080048575A CN102667718A CN 102667718 A CN102667718 A CN 102667718A CN 2010800485750 A CN2010800485750 A CN 2010800485750A CN 201080048575 A CN201080048575 A CN 201080048575A CN 102667718 A CN102667718 A CN 102667718A
Authority
CN
China
Prior art keywords
data
event
thread
communication thread
communication
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.)
Granted
Application number
CN2010800485750A
Other languages
English (en)
Other versions
CN102667718B (zh
Inventor
D·R·富兰克林
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.)
International Business Machines Corp
Original Assignee
International Business Machines Corp
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 International Business Machines Corp filed Critical International Business Machines Corp
Publication of CN102667718A publication Critical patent/CN102667718A/zh
Application granted granted Critical
Publication of CN102667718B publication Critical patent/CN102667718B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/54Interprogram communication
    • G06F9/544Buffers; Shared memory; Pipes
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/48Program initiating; Program switching, e.g. by interrupt
    • G06F9/4806Task transfer initiation or dispatching
    • G06F9/4843Task transfer initiation or dispatching by program, e.g. task dispatcher, supervisor, operating system
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/54Interprogram communication
    • G06F9/541Interprogram communication via adapters, e.g. between incompatible applications

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
  • Computer And Data Communications (AREA)

Abstract

提供一种处理网络事件的方法和系统,以根据单个网络设备事件生成多个事件。该系统包括用于获取事件数据的网络监控设备和用于在处理线程上从网络监控设备接收输入事件的处理系统,其中处理系统包括用于生成多个通信线程的通信线程生成组件,通信线程的每一个用于传输事件数据到服务器数据库。通信线程打开到所需服务器数据库的连接并且当网络监控设备运行时这些连接保持在打开状态下。

Description

处理网络事件的方法和系统
技术领域
本发明涉及事件管理领域。特别地,本发明涉及由单网络设备事件的多事件生成。
背景技术
网络管理涉及从网络中的许多设备收集数据。已知的实现使用诸如探针或者代理的种类繁多的监控设备来执行该任务,所述任务可以提供来自多种类型的网络设备和系统的大量源数据。如果在没有预处理的情况下将该数据发送到中央数据库并且在中央数据库中对其进行过滤且接着进行处理,则可能导致高计算开销并且严重地影响系统的整体性能。
在已知的网络管理实现中,使用规则配置文件来执行预处理,所述规则配置文件允许网络管理员使用一系列逻辑运算来操作、扩增(augment)和丢弃输入的事件数据。然而,这些运算的输出局限为单个事件的生成,所述单个事件可能仅仅被发送到特定中央服务器数据库中的单个表。
为了管理不断增加的大量网络数据,已经组合了更加复杂的服务器数据库结构,以分散计算开销。然而,局限于监控设备级别上的每个输入事件的单数据事件限制了管理员可用的高级配置选项的数目。
在已知的监控设备中,可以从多个输入线程接收事件数据,但仅仅单个线程被用来通过使用规则文件来处理该数据并且将其发送到服务器数据库。
由于仅仅使用单个线程来处理和发出事件数据,所以性能受限于其所运行的机器上的单个处理器的速度,以及发送数据到服务器数据库的通信开销。即使监控设备的主机具有多个处理器内核(如现在大部分那样),但其并不提高事件处理和数据传输的速度。
因此,本领域需要解决上述问题。
发明内容
根据本发明的第一方面,提供了一种处理网络事件的方法,包含:在处理线程上从监控设备接收输入网络事件;根据网络事件生成多个数据输出;以及生成多个通信线程,每一个通信线程用于传输多个数据输出到多个服务器数据库中的一个。
处理线程可以接收输入事件并且可以处理该输入事件的规则文件,所述规则文件包括用于创建新通信线程的生成事件命令。通信线程可以打包并传输事件数据到服务器数据库。通信线程可以打开到所需服务器数据库的连接并且在监控设备运行时这些连接可以保持在打开状态下。
该方法可以包括:处理规则文件以查找已注册目标的实例;以及确定所需的服务器数据库连接。服务器数据库可以包括事件数据的一个或更多个表格,每个服务器数据库对应单个通信线程。
通过消息队列,线程间通信可以是异步的。该方法可以包括经由线程间数据结构传输事件数据。
该方法可以包括从处理线程发送清除(flush)命令以清除通信线程。
该方法还可以包括解析事件数据以生成多个数据输出。
该方法可以包括处理输入事件的规则文件,以及当生成事件命令到达时经由指针将数据传输到通信线程。
可以将事件数据作为目标和列数据传递到通信线程,并且将事件数据转换为结构化查询语言(SQL)并附加到文本存储器分配以用于传输。
根据本发明的第二方面,提供了一种处理网络事件的计算机软件产品,该产品包含计算机可读存储介质,存储在计算机中,所述计算机中存储包含计算机可执行指令的程序,所述指令在由计算机读取执行时执行下列步骤:在处理线程上从监控设备接收输入网络事件;根据网络事件生成多个数据输出;以及生成多个通信线程,每一个通信线程用于传输多个数据输出到多个服务器数据库中的一个。
根据本发明的第三方面,提供一种处理网络事件的系统,包含:网络监控设备,用于获取网络事件数据;处理系统,用于在处理线程上从监控设备接收输入事件,其中所述处理系统包括通信线程生成组件,用于生成多个通信线程,每一个通信线程用于传输事件数据到服务器数据库。
该处理系统可以包括用于输入事件和输入事件的规则文件的接收器,所述规则文件包括用于创建新通信线程的生成事件命令。
该系统可以包括:用于处理以查找已注册目标的实例的规则文件;以及用于确定所需服务器数据库连接的组件。
服务器数据库可以包括事件数据的一个或更多个表格,每个服务器数据库对应单个通信线程。
通过消息队列,线程间通信可以是异步的,并且可以提供线程间数据结构以传输事件数据。
该系统可以包括用于清除通信线程的组件。
该系统还可以包括用于解析事件数据以生成多个数据输出的解析组件。
通信线程可以包括转换器,用于转换事件数据为结构化查询语言(SQL)并且将其附加到文本存储器分配以用于传输。
处理系统可以运行在多个处理器上,使得处理线程和通信线程能够同时被执行。
从第四方面看,本发明提供计算机可读介质上存储的并且可加载到数字计算机的内存中的计算机程序,包含软件代码部分,所述软件代码部分当所述程序运行在计算机上时执行本发明的步骤。
附图说明
现在将结合如以下附图所示的优选实施例仅仅以示例的方式来描述本发明,在附图中:
图1是根据本发明优选实施例的事件管理系统的框图;
图2是根据本发明优选实施例的线程处理系统的框图;
图3是计算机系统的框图,其中可以实现本发明的优选实施例;
图4是根据本发明优选实施例的线程处理方法的流程图;
图5是根据本发明优选实施例的规则文件处理线程上的线程处理方法的流程图;以及
图6是根据本发明优选实施例的通信线程上的线程处理方法的流程图。
具体实施方式
应理解,为了说明的简洁、清楚起见,不一定按比例绘制附图所示的元件。例如,为了清楚起见,可以相对于其它元件放大某些元件的尺寸。此外,在适当的情况下,可以在附图中重复附图标记,以指示相应的或类似的特征。
在以下的详细描述中,阐述了多种特定细节,以提供对本发明的全面理解。然而,本领域技术人员将会理解的是,可以在没有这些特定细节的情况下实施本发明。在其他实例中,没有详细地描述众所周知的方法、过程和组件,以免使本发明变得模糊。
参考图1,显示了用于网络管理的事件管理系统100。系统100包括诸如探针或者代理的一个或更多个监控设备,其每一个经由设备接口101-103连接到诸如网络设备的事件源111-113,以检测和获取事件数据,并且转发事件数据121-123以用于处理。监控设备可以远程或者直接地工作以监控网络设备上的事件。事件数据121-123被作为警报或故障发送到一个或更多个服务器数据库131-133。提供处理系统140以在将事件数据121-123作为警报或故障转发到服务器数据库131-133之前转换和操作事件数据121-123。
例如,事件管理系统可以采用
Figure BDA0000157913070000041
Figure BDA0000157913070000042
OMNIbus服务级管理系统的形式,所述管理系统具有收集事件数据以作为警报发送到目标服务器(ObjectServers)的IBM Netcool OMNIbus探针(IBM、Tivoli和Netcool是国际商业机器公司在世界范围内的很多行政辖区注册的商标)。其它事件管理系统由惠普公司、CA公司和BMC软件公司提供,其中,代理直接或远程地监控网络设备。
所述的处理系统140包括规则文件141并且包括可以响应于单个输入(incoming)数据事件121-123而用来生成附加事件的命令。可以将该命令与输入数据的现有逻辑处理和操作完全集成在一块以最大化配置灵活性。这给予管理员响应于单个输入数据事件121而向可以贮存在多个服务器数据库131-133上的多个表格151-153发送不同事件数据121-123的能力。
处理系统140负责规则文件处理和经由单独操作系统线程的服务器数据库通信。规则文件处理由规则文件处理线程160负责。规则文件中定义的每个单独服务器数据库131-133目标的通信由单独通信线程161-163负责。
一旦通过规则文件解析,则将事件数据121-123放置在特定服务器数据库131的适当数据队列上,所述数据队列由用于该服务器131的适当通信线程161读取。通信线程161转换输入数据为结构化查询语言(SQL)并且使用服务器中间件将其发送到服务器数据库131。
这意味着在多处理器内核主机上,可以在打包和发送数据到一个或更多个服务器数据库的同时执行规则文件处理。当在高数据负载下时,这可以显著地提高性能。
参考图2,框图更加详细地显示了处理系统140。处理系统140包括规则文件处理线程160和多个生成的通信线程161、162。
规则文件处理线程160包括规则文件141。规则文件处理线程160包括初始化组件212,所述初始化组件212执行预处理以读取规则文件141并且将其转换为机器可处理的形式,以产生在接收事件时完成的一系列声明列表。初始化组件212还创建目标服务器列表213。初始化组件212为每个目标服务器产生通信线程161、162,并且创建规则文件处理线程160和通信线程161、162中的每一个之间的数据或消息队列231、232。
事件接收器214接收输入事件数据。规则文件处理组件215处理输入事件数据。规则文件处理组件215包括事件生成命令组件216和事件解析命令组件217。
打包和传输组件218发送已解析事件到缓冲器219以用于传输。提供清除组件220来清除在前事件。
提供线程间数据结构250以避免大量数据通过消息队列231、232传送。在数据结构250中通过打包空间来分配存储器以存储事件数据。接着,将该数据的指针放置在消息队列231、232上并且发送到通信线程161、162。接下来,通信线程161、162在该数据已经被转换为SQL之后释放存储器。
规则文件处理线程160包括事件解析命令组件217,用于根据单事件生成多个数据输出,以输入多个数据库或表格。
使用规则文件141中的逻辑算符来处理来自输入事件的数据,所述数据被用来填入输出事件中的字段。例如,输入事件具有数据A(字符串)、B(整数)和C(整数)。生成的事件可以输出3个字段(B+1、A+“-这是摘要”、B-C)。接下来,主事件可以只输出2个字段(A+“-主事件”、B)。唯一不变的是目标服务器151、152中的目标表格必须与正在发出的数据具有相同类型的字段。因此,根据规则文件141中编码的逻辑由输入事件数据构造输出事件。
通信线程161、162的每一个包括:事件接收器241、SQL转换器组件242、服务器数据库传输组件243、SQL缓冲器244和清除组件245。建立到目标服务器151、152的连接并且创建空的SQL缓冲器244。事件接收器241从规则文件处理线程160接收事件并且处理它以及传输它到目标服务器131、132。从规则文件处理线程160接收清除消息并且清除组件245处理这些消息以及发回清除应答。
在规则文件141语法中提供生成事件命令。生成事件命令提供发送事件到多于一个表格的能力。这些表格可以贮存在不同的服务器数据库131、132上。目标表格将需要使用注册目标规则文件命令来注册。当根据相应的细节表格来调用注册目标命令时,生成事件命令还在规则文件141中插入细节信息(如果指定任何细节信息)。
为了保持监控设备的事件吞吐率,需要尽可能快地执行来自监控设备的事件数据的处理。生成事件命令212使得插入操作在多个服务器数据库131-132上执行。为了保证这并不降低主规则文件的处理速度,则针对要接收数据的每个服务器131-132产生到单独线程161、162的通信。因此,监控设备默认地以多线程形式来运行。存在一个主事件接收和规则文件处理线程160以及用于打包和传输的一个或更多个通信线程161-162。通信线程161-162打开到所需服务器131-132的连接,并且在监控设备运行时连接保持在打开状态下。
参考图3,实现本发明优选实施例的示例性系统包括适于存储和/或执行程序代码的数据处理系统300,所述数据处理系统300包括通过一个或更多个总线系统311、312直接或间接地耦合到存储器元件的至少一个处理器301-303。可以在系统中提供多个处理器和通信总线系统以用于并行处理。
处理器301-303的每一个可以包括其自己的高速缓存321-323;替代地,可以使用全局高速缓存324。
存储器元件可以包括在程序代码的实际执行期间使用的本地存储器、大容量存储设备和高速缓冲存储器,所述高速缓冲存储器提供至少一些程序代码的临时存储,以减少执行期间需要从大容量存储设备获取代码的次数。
处理器301-303经过高速系统总线311相互通信并且与系统存储器330通信。系统存储器330包括全局随机访问存储器(RAM)331、全局只读存储器(ROM)332、存储器控制器333和非易失性RAM(NVRAM)334。
全局RAM 331是处理器中的每一个为了随后所期望的访问而用来存储数据和指令的易失性存储器。全局ROM 332是包括系统中存储的数据和指令的非易失性存储器。NVRAM 334是可以由处理器修改并且包括引导代码的非易失性RAM。
也附接到系统总线311的是处理器总线到适配器总线桥340。该总线桥允许多个设备经过适配器总线312与处理器301-303中的每一个和/或系统存储器330通信。
耦合到适配器总线312的是用于存储大量数据和指令(诸如操作系统和多个软件程序)的硬盘341。输入/输出(I/O)控制器342也耦合到适配器总线312,并且用于处理与所附接的I/O设备343或外部I/O设备343(诸如键盘、鼠标、可移除介质等)的通信。
显示适配器344也可以耦合到适配器总线312以在显示器345上显示数据。此外,通信适配器346可以附接到适配器总线312以经过网络传输数据。
图4显示了多事件生成方法的流程图400。在处理线程上从网络监控设备接收401输入事件。运行402规则文件处理并且生成403多个通信线程,针对事件数据要发送到的每个目标服务器生成一个通信线程。
每个通信线程打开404到服务器的连接并且打包和传输405事件数据到服务器。
图5显示了规则文件处理线程的方法的流程图500。读取规则文件并执行501预处理,包括检查语法和创建已声明目标服务器列表。
为每个目标服务器产生502通信线程。创建规则文件处理线程和每个通信线程之间的消息队列。
等待503下一个输入事件数据或者退出条件。从通信线程接收504任何清除应答消息。
接收505输入原始事件数据并且使用规则文件解析506该事件数据。每次遇到生成事件命令,则将已处理的事件数据消息放置507在对于适当通信线程的队列上。如果没有丢弃主事件,则将已处理的事件数据消息放置508在对于适当通信线程的队列上。
确定509是否已经达到已缓存事件的最大数量。如果没有,则该方法回到等待下一个输入事件数据或者退出条件503。如果达到已缓存事件的最大数量,则确定510在前清除是否已经发出并且所有通信线程已经应答。如果没有,则等待511清除应答。如果是,则清除命令被发送512到所有通信线程,并且该方法回到等待下一个输入事件数据或者退出条件503。
参考图6,每个通信线程上的方法的流程图600。建立601到被指定给通信线程的目标服务器的连接。创建602空SQL缓冲器。
等待603来自规则文件处理线程的输入消息。确定604消息是否是清除消息。如果是,则将任何SQL缓冲器数据发送605到服务器并清除。发送606清除应答到规则文件线程并且该方法回到等待更多的输入消息603。
如果消息不是清除消息,则确定607其是否是事件消息。如果不是,则该方法回到等待更多的输入消息603。如果是事件消息,则将事件数据转换608为SQL消息并且写入缓冲器。该方法回到等待更多的输入消息603。
线程结构
使用标准库线程功能创建和销毁线程。使用基于标准信号量的消息队列来使线程间通信异步以及处理线程间通信。主库事件处理循环处理规则文件并且产生一个或更多个服务器通信线程。通信线程之间没有直接通信。处理循环线程控制(一个或更多个)通信线程。如果线程没有处于传输数据的处理中,则当等待输入数据时通信线程将会休眠。如果通信线程忙于发送数据,则缓存主处理线程发送的数据,并且一旦通信线程空闲就进行处理。
线程间数据结构
大量的数据并不通过消息队列传送,而使用共享数据模式。
在其需要等待所有线程传输和存储来自在前周期的任何未决数据之前,处理线程决不能完成规则文件多于两次。
线程间消息结构
以下列出了可以在处理线程和通信线程之间传递的消息:
●“事件数据”,从处理线程到通信线程。处理线程已到达
规则文件中的生成事件命令并且发送所涉及的事件数据到通信线程。替代地,处理线程已到达规则文件的尾部并且发送主事件数据到适当通信线程。
●“清除”,从处理线程到所有通信线程。主监控设备调用清除命令。这导致处理线程发送清除命令到所有通信线程。如果存在任何缓存数据,则通信线程将其发送到服务器。
●“清除应答”,从通信线程到处理线程。指示通信线程已经完成清除到服务器的所有未决数据。在其可以发送另一个清除消息到该线程之前,处理线程必须等待该“清除应答”。
初始化
监控设备的初始化包括最后级,该最后级包括产生通信线程。处理规则文件以查找用来算出所需服务器连接列表的注册目标命令的每个实例。这为每个服务器产生一个连接,而不考虑每个服务器上单独表格的数量。接下来,创建到每个服务器的连接。从相关服务器查询每个目标表格的列类型并且进行保存。
在最后级期间,根据规则文件和所分配的存储器计算线程间存储器需求。根据规则文件计算SQL缓冲存储器大小。为每个服务器连接产生线程并且接着将连接的控制和缓存器大小传递到该线程。线程数量将比监控设备所连接的服务器数量多一个。所以,所产生的线程数量由规则文件中使用的到不同服务器的注册目标命令的数量来控制。
处理
当出现输入事件时解析规则文件。当处理到达生成事件命令,并且传输数据到适当线程以经由指针进行打包和传输。如果目标表格具有匹配细节表格,则同样将任何当前细节信息传递到适当线程以进行打包和传输。
在一个实施例中,生成事件命令的语法可以是:
“genevent(target,column_name1,data 1,column_name2,data2,...)”,其中target是注册目标命令返回的目标表格。列名称和数据对必须对应于目标表格的结构,但可以是所有可用列的子集。目标和列名称可以是文字,但数据可以是变量。在该级执行所需的数据的任何类型转换。如果类型转换不可能,则将非致命错误记录在日志中并且将不会生成事件。
生成事件命令的替代语法可以是:
“genevent(target)”,其中复制所有当前事件数据并且将其发送到目标表格。其这样是为了,针对管理员希望仅仅发送当前事件的摘要复制到不止一个的服务器的情况下的使用,不需要复制所有的列名称和数据对。因为这可能是主要使用情况中的一种,所以其对于管理员而言应当是比较容易的。在处理规则文件结束时,如果没有调用丢弃事件操作,则还将事件数据传输到保持与当前所选目标表格的连接的线程。如果该目标表格被标志为具有匹配描述表格,则还将任何描述数据传递到适当线程以进行打包和传输。当网络监控设备指示库使用清除命令发送数据时,其将导致发送命令被发送到所有传输线程。如果规则文件中包括多个细节命令,假设目标包括细节表格,则细节命令是生成事件命令占优之前的最近一个。接下来,在到达规则文件的下一个生成事件命令或者结尾处之前,可以由另一个细节命令再次改变细节。
打包
将数据作为目标和列名称数据对传递到通信线程。将这些数据转换为SQL并且有效地附加到准备用于传输的文本缓冲器。缓冲器是具有开始和结束指针的存储器的存储器已分配区域。将会在初始化期间计算所需的最大缓冲器大小并且最大缓冲器大小将会是传输线程在其开始时所分配的存储器。
传输
如果缓冲关闭,则一旦打包SQL文本缓冲器就将其传输到服务器。除返回清除应答之外,忽略发送命令。如果缓冲打开,则当接收到发送命令并且接着返回清除应答时,将SQL文本缓冲器传输到服务器。
为了保持和提高监控设备的性能,由单独线程处理与每个服务器的通信。网络监控设备将能够接收事件并且同时传输在前事件结果。这种结构意味着到不同服务器的生成事件插入和标准事件插入可以变得稍微有些无序。可以禁止该多线程,但可能降低性能。
所述线程结构可能提高性能的情形是:监控设备处理大量事件数据,但通信却因为例如运行在更快的机器上并且没有被其它事件输入严重加载而没有被服务器明显阻滞。
所述方法和系统具有以下示例性应用。
事件洪流(event flood)检测器,其中临时丢弃并且由少得多的信息事件来代替过量的输入数据。管理员可能希望配置监控设备规则文件以使用所提供的附加功能检测事件洪流条件并且临时地抑制正在发送到服务器的事件数据。当激活洪流保护以及又在其去激活时,使用生成事件命令来向服务器发送信息事件。
管理员可能需要在源头将事件划分为高优先级处理事件和低优先级信息事件并且以不同的方式来处理每个事件。将高优先级事件发送到高优先级服务器以及关联和存档所有事件的服务器系统。将低优先级事件仅仅发送到关联和存档所有事件的服务器。
管理员可能需要输入事件数据的统计分析,但不希望增加接收事件的服务器上的负载。使用生成事件命令来发送根据输入事件数据得到的统计信息到另一个服务器以用于随后的分析。
管理员可能希望复制两个或更多服务器中的所有事件数据,而没有运行它们之间的单向网关的开销。数据具有不同服务器在其上执行的不同操作。
可以将事件管理系统作为服务经由网络提供给客户。
本发明可以采用全硬件实施例、全软件实施例或者包含硬件和软件元件的实施例的形式。在优选实施例中,本发明以包括(但不限于)固件、常驻软件、微代码等的软件来实现。
本发明可以采用可从计算机可用或者计算机可读介质访问的计算机程序或者计算机程序产品,该介质提供由计算机或者任何指令执行系统使用或者与之结合使用的程序代码。就此而言,计算机可用或者计算机可读介质可以是可以包含、存储、传送、传播或者传输供指令执行系统、装置或设备使用或者与之结合使用的程序的任何装置。介质可以是电子、磁、光、电磁、红外或者半导体系统(或者装置或者设备)或者传播介质。计算机可读介质的示例包括半导体或固态存储器、磁带、可移除计算机软盘、随机访问存储器(RAM)、只读存储器(ROM)、硬盘和光盘。光盘的当前示例包括只读光盘(CD-ROM)、读/写光盘(CD-R/W)和DVD。
在不脱离本发明范围的前提下,可以对前述内容作出改进和修改。

Claims (26)

1.一种处理网络事件的方法,包含:
在处理线程(160)上从监控设备(101-103)接收(401、503)输入网络事件(121-123);
根据所述网络事件(121-123)生成(506)多个数据输出;以及
生成(403、502)多个通信线程(161-163),所述多个通信线程中的每一个用于传输所述多个数据输出到多个服务器数据库(131-133)中的一个。
2.如权利要求1所述的方法,其中处理线程(160)接收输入事件(121-123)并且处理所述输入事件的规则文件(141),所述规则文件(141)包括用于创建新通信线程(161-163)的生成事件命令(216)。
3.如权利要求1或权利要求2所述的方法,其中通信线程(161-163)打包和传输事件数据到服务器数据库(131-133)。
4.如权利要求1到3中任一项所述的方法,其中所述通信线程(161-163)打开到所需服务器数据库(131-133)的连接,并且当监控设备(101-103)运行时这些连接保持在打开状态下。
5.如在前权利要求中任一项所述的方法,包括:
处理(501)规则文件(141)以查找已注册目标(213)的实例;以及
确定所需服务器数据库连接。
6.如在前权利要求中任一项所述的方法,其中所述服务器数据库(131-133)包括事件数据的一个或更多个表格(151-153),每个服务器数据库(131-133)对应单个通信线程(161-163)。
7.如在前权利要求中任一项所述的方法,其中线程间通信通过消息队列(231、233)是异步的。
8.如在前权利要求中任一项所述的方法,包括:
通过线程间数据结构(250)传输事件数据。
9.如在前权利要求中任一项所述的方法,包括:
从所述处理线程(160)发送清除命令(512)以清除所述通信线程(161-163)。
10.如在前权利要求中任一项所述的方法,包括解析事件数据(506)以生成多个数据输出。
11.如在前权利要求中任一项所述的方法,包括:
处理输入事件的规则文件(141),并且当生成事件命令(216、507)到达时经由指针将数据传输到通信线程(161-163)。
12.如在前权利要求中任一项所述的方法,其中将所述事件数据作为目标和列数据传递到通信线程(161-163)并且将所述事件数据转换(608)为结构化查询语言且附加到文本存储器分配以用于传输。
13.一种处理网络事件的计算机软件产品,所述产品包含计算机可读存储介质,存储在计算机中,所述计算机可读存储介质中存储包含计算机可执行指令的程序,所述指令在由计算机读取执行时执行下列步骤:
在处理线程(160)上从监控设备(101-103)接收(401、503)输入网络事件(121-123);
根据网络事件(121-123)生成(506)多个数据输出;以及
生成(403、502)多个通信线程(161-163),每一个用于传输所述多个数据输出到多个服务器数据库(131-133)中的一个。
14.一种处理网络事件的系统,包含:
网络监控设备(101-103),用于获取网络事件数据(121-123);
处理系统(140),用于在处理线程(160)上从监控设备(101-103)接收输入事件,其中所述处理系统(140)包括通信线程生成组件(215、216),用于生成多个通信线程(161-163),所述多个通信线程中的每一个用于传输事件数据到服务器数据库(131-133)。
15.如权利要求14所述的系统,其中所述处理系统(140)包括用于输入事件(121-123)和所述输入事件的规则文件(141)的接收器(214),所述规则文件(141)包括用于创建新通信线程(161-163)生成事件命令(216)。
16.如权利要求14或权利要求15所述的系统,其中通信线程(161-163)打包和传输事件数据到服务器数据库(131-133)。
17.如权利要求14到16中任一项所述的系统,其中所述通信线程(161-163)打开到所需服务器数据库(131-133)的连接并且在监控设备(101-103)运行时这些连接保持在打开状态下。
18.如权利要求14到17中任一项所述的系统,包括:
规则文件(141),用于进行处理以查找已注册目标(213)的实例;以及
用于确定所需服务器数据库连接的组件。
19.如权利要求14到18中任一项所述的系统,其中所述服务器数据库(131-133)包括事件数据的一个或更多个表格(151-153),每个服务器数据库(131-133)对应单个通信线程(161-163)。
20.如权利要求14到19中任一项所述的系统,其中线程间通信通过消息队列(231、232)是异步的。
21.如权利要求14到20中任一项所述的系统,包括:
线程间数据结构(250),用于传输事件数据。
22.如权利要求14到21中任一项所述的系统,包括:
用于清除所述通信线程(161-163)的组件(220)。
23.如权利要求14到22中任一项所述的系统,包括解析组件(217),用于解析事件数据以生成多个数据输出。
24.如权利要求14到23中任一项所述的系统,其中所述通信线程(161-163)包括转换器(241),用于将事件数据转换为结构化查询语言并且将其附加到文本存储器分配以用于传输。
25.如权利要求14到24中任一项所述的系统,其中所述处理系统(140)运行在多个处理器上,使得所述处理线程(160)和通信线程(161-163)能够同时被执行。
26.一种计算机可读介质上存储的并且能够加载到数字计算机的内存中的计算机程序,包含软件代码部分,所述软件代码部分当所述程序运行在计算机上时执行权利要求1到12中任一项的方法。
CN201080048575.0A 2009-10-30 2010-08-31 处理网络事件的方法和系统 Active CN102667718B (zh)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
EP09174603.2 2009-10-30
EP09174603 2009-10-30
PCT/EP2010/062768 WO2011051026A2 (en) 2009-10-30 2010-08-31 Method and system for processing network events

Publications (2)

Publication Number Publication Date
CN102667718A true CN102667718A (zh) 2012-09-12
CN102667718B CN102667718B (zh) 2016-02-03

Family

ID=43088326

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201080048575.0A Active CN102667718B (zh) 2009-10-30 2010-08-31 处理网络事件的方法和系统

Country Status (5)

Country Link
US (1) US8930526B2 (zh)
CN (1) CN102667718B (zh)
DE (1) DE112010004187T5 (zh)
GB (1) GB2487317B (zh)
WO (1) WO2011051026A2 (zh)

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104516776A (zh) * 2013-10-07 2015-04-15 富士通株式会社 数据处理管理方法及信息处理设备
CN105373420A (zh) * 2014-08-28 2016-03-02 北京奇虎科技有限公司 数据传输方法及装置
CN108345652A (zh) * 2017-01-23 2018-07-31 霍尼韦尔国际公司 用于使用并行性、无状态查询、数据切片或异步拉取机构处理安全系统中数据的系统和方法
CN114840219A (zh) * 2022-07-06 2022-08-02 湖南傲思软件股份有限公司 分布式事件处理系统
CN116755891A (zh) * 2023-08-21 2023-09-15 成都中科合迅科技有限公司 基于多线程的事件队列处理方法和系统

Families Citing this family (34)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8364813B2 (en) 2010-11-02 2013-01-29 International Business Machines Corporation Administering incident pools for event and alert analysis
US8386602B2 (en) 2010-11-02 2013-02-26 International Business Machines Corporation Relevant alert delivery in a distributed processing system
US8621277B2 (en) * 2010-12-06 2013-12-31 International Business Machines Corporation Dynamic administration of component event reporting in a distributed processing system
US8805999B2 (en) 2010-12-07 2014-08-12 International Business Machines Corporation Administering event reporting rules in a distributed processing system
US8868984B2 (en) 2010-12-07 2014-10-21 International Business Machines Corporation Relevant alert delivery in a distributed processing system with event listeners and alert listeners
US8737231B2 (en) 2010-12-07 2014-05-27 International Business Machines Corporation Dynamic administration of event pools for relevant event and alert analysis during event storms
US8756462B2 (en) 2011-05-24 2014-06-17 International Business Machines Corporation Configurable alert delivery for reducing the amount of alerts transmitted in a distributed processing system
US8645757B2 (en) 2011-05-26 2014-02-04 International Business Machines Corporation Administering incident pools for event and alert analysis
US9213621B2 (en) 2011-05-27 2015-12-15 International Business Machines Corporation Administering event pools for relevant event analysis in a distributed processing system
US8676883B2 (en) 2011-05-27 2014-03-18 International Business Machines Corporation Event management in a distributed processing system
US8392385B2 (en) 2011-06-22 2013-03-05 International Business Machines Corporation Flexible event data content management for relevant event and alert analysis within a distributed processing system
US8880943B2 (en) 2011-06-22 2014-11-04 International Business Machines Corporation Restarting event and alert analysis after a shutdown in a distributed processing system
US8713366B2 (en) 2011-06-22 2014-04-29 International Business Machines Corporation Restarting event and alert analysis after a shutdown in a distributed processing system
US9419650B2 (en) 2011-06-22 2016-08-16 International Business Machines Corporation Flexible event data content management for relevant event and alert analysis within a distributed processing system
US9178936B2 (en) 2011-10-18 2015-11-03 International Business Machines Corporation Selected alert delivery in a distributed processing system
US20130097215A1 (en) 2011-10-18 2013-04-18 International Business Machines Corporation Selected Alert Delivery In A Distributed Processing System
US20130097272A1 (en) 2011-10-18 2013-04-18 International Business Machines Corporation Prioritized Alert Delivery In A Distributed Processing System
US8887175B2 (en) 2011-10-18 2014-11-11 International Business Machines Corporation Administering incident pools for event and alert analysis
US8713581B2 (en) 2011-10-27 2014-04-29 International Business Machines Corporation Selected alert delivery in a distributed processing system
US8954811B2 (en) 2012-08-06 2015-02-10 International Business Machines Corporation Administering incident pools for incident analysis
US8943366B2 (en) 2012-08-09 2015-01-27 International Business Machines Corporation Administering checkpoints for incident analysis
CN104111872B (zh) * 2013-04-19 2016-02-17 腾讯科技(深圳)有限公司 系统事件的过滤方法、装置及终端
US9361184B2 (en) 2013-05-09 2016-06-07 International Business Machines Corporation Selecting during a system shutdown procedure, a restart incident checkpoint of an incident analyzer in a distributed processing system
US9170860B2 (en) 2013-07-26 2015-10-27 International Business Machines Corporation Parallel incident processing
US9658902B2 (en) 2013-08-22 2017-05-23 Globalfoundries Inc. Adaptive clock throttling for event processing
US9256482B2 (en) * 2013-08-23 2016-02-09 International Business Machines Corporation Determining whether to send an alert in a distributed processing system
US9086968B2 (en) 2013-09-11 2015-07-21 International Business Machines Corporation Checkpointing for delayed alert creation
US9602337B2 (en) 2013-09-11 2017-03-21 International Business Machines Corporation Event and alert analysis in a distributed processing system
GB201320783D0 (en) * 2013-11-25 2014-01-08 Mind Candy Ltd An Improved messaging protocol
US9389943B2 (en) 2014-01-07 2016-07-12 International Business Machines Corporation Determining a number of unique incidents in a plurality of incidents for incident processing in a distributed processing system
US9417840B2 (en) * 2014-09-16 2016-08-16 Salesforce.Com, Inc. In-memory buffer service
CN105991416B (zh) * 2015-02-15 2019-05-31 无锡北邮感知技术产业研究院有限公司 一种消息传递方法及消息传递中间件
US10459778B1 (en) 2018-07-16 2019-10-29 Microsoft Technology Licensing, Llc Sending messages between threads
US20220360486A1 (en) * 2021-05-06 2022-11-10 Bank Of America Corporation Real-time event data log processing system related to monitored events on a network

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20040165610A1 (en) * 2003-02-26 2004-08-26 International Business Machines Corporation System and method for efficient replication and distribution of data objects
CN1784656A (zh) * 2003-05-09 2006-06-07 国际商业机器公司 监控数据处理系统中的操作数据

Family Cites Families (40)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5588150A (en) * 1994-09-29 1996-12-24 International Business Machines Corporation Push down optimization in a distributed, multi-database system
GB2337664B (en) * 1995-03-31 2000-02-16 Inmarsat Ltd Communication method and apparatus
US6393386B1 (en) * 1998-03-26 2002-05-21 Visual Networks Technologies, Inc. Dynamic modeling of complex networks and prediction of impacts of faults therein
US6430616B1 (en) * 1998-12-04 2002-08-06 Sun Microsystems, Inc. Scalable system method for efficiently logging management information associated with a network
US6421701B1 (en) * 1999-01-29 2002-07-16 International Business Machines Corporation Method and system for replication support in a remote method invocation system
US6505244B1 (en) * 1999-06-29 2003-01-07 Cisco Technology Inc. Policy engine which supports application specific plug-ins for enforcing policies in a feedback-based, adaptive data network
US6584502B1 (en) * 1999-06-29 2003-06-24 Cisco Technology, Inc. Technique for providing automatic event notification of changing network conditions to network elements in an adaptive, feedback-based data network
US6539427B1 (en) * 1999-06-29 2003-03-25 Cisco Technology, Inc. Dynamically adaptive network element in a feedback-based data network
US6765864B1 (en) * 1999-06-29 2004-07-20 Cisco Technology, Inc. Technique for providing dynamic modification of application specific policies in a feedback-based, adaptive data network
US6654782B1 (en) * 1999-10-28 2003-11-25 Networks Associates, Inc. Modular framework for dynamically processing network events using action sets in a distributed computing environment
US6941557B1 (en) * 2000-05-23 2005-09-06 Verizon Laboratories Inc. System and method for providing a global real-time advanced correlation environment architecture
US7673335B1 (en) * 2004-07-01 2010-03-02 Novell, Inc. Computer-implemented method and system for security event correlation
US7043727B2 (en) * 2001-06-08 2006-05-09 Micromuse Ltd. Method and system for efficient distribution of network event data
US7516208B1 (en) * 2001-07-20 2009-04-07 International Business Machines Corporation Event database management method and system for network event reporting system
US8103497B1 (en) * 2002-03-28 2012-01-24 Cypress Semiconductor Corporation External interface for event architecture
US6782424B2 (en) * 2002-08-23 2004-08-24 Finite State Machine Labs, Inc. System, method and computer program product for monitoring and controlling network connections from a supervisory operating system
US7376733B2 (en) * 2003-02-03 2008-05-20 Hewlett-Packard Development Company, L.P. Method and apparatus and program for scheduling and executing events in real time over a network
US20040172467A1 (en) * 2003-02-28 2004-09-02 Gabriel Wechter Method and system for monitoring a network
US7363369B2 (en) * 2003-10-16 2008-04-22 International Business Machines Corporation Monitoring thread usage to dynamically control a thread pool
US7925665B2 (en) * 2004-03-08 2011-04-12 Siebel Systems, Inc. Using query persistence for efficient subquery evaluation in federated databases
US7965620B2 (en) * 2004-05-25 2011-06-21 Telcordia Licensing Company, Llc Method, computer product and system for correlating events in a network
US7395258B2 (en) * 2004-07-30 2008-07-01 International Business Machines Corporation System and method for adaptive database caching
US7707189B2 (en) 2004-10-05 2010-04-27 Microsoft Corporation Log management system and method
US7593980B2 (en) * 2004-11-30 2009-09-22 Cisco Technology, Inc. Application server system and method
US9760647B2 (en) * 2004-12-08 2017-09-12 Oracle International Corporation Techniques for automatically exposing, as web services, procedures and functions stored in a database
US20060190488A1 (en) * 2005-02-22 2006-08-24 Transparency Software, Inc. System and method for determining information related to user interactions with an application
US20080046557A1 (en) * 2005-03-23 2008-02-21 Cheng Joseph C Method and system for designing, implementing, and managing client applications on mobile devices
US7979530B1 (en) * 2005-04-27 2011-07-12 Juniper Networks, Inc. Inventory life cycle management for a computer network
US8694621B2 (en) * 2005-08-19 2014-04-08 Riverbed Technology, Inc. Capture, analysis, and visualization of concurrent system and network behavior of an application
US8572223B2 (en) * 2006-07-20 2013-10-29 Charles Schwab & Co., Inc. System and method for utilizing event templates in an event manager to execute application services
US8032900B2 (en) * 2006-08-02 2011-10-04 Microsoft Corporation Conducting client-server inter-process communication
US7509416B1 (en) * 2006-11-03 2009-03-24 Unisys Corporation Dynamically updating subcomponents in a tiered remote monitoring system
US7984452B2 (en) * 2006-11-10 2011-07-19 Cptn Holdings Llc Event source management using a metadata-driven framework
GB0718251D0 (en) * 2007-09-19 2007-10-31 Ibm An apparatus for propagating a query
US8374987B2 (en) * 2008-06-30 2013-02-12 Sap Ag Stateful, continuous evaluation of rules by a state correlation engine
US8028074B2 (en) * 2008-09-12 2011-09-27 Research In Motion Limited Obtaining information associated with established sessions
US9495174B2 (en) * 2009-01-02 2016-11-15 International Business Machines Corporation Agnostic processing of resource requests to message queues and sequential files
US8930527B2 (en) * 2009-05-26 2015-01-06 Oracle International Corporation High availability enabler
US9442777B2 (en) * 2009-07-31 2016-09-13 Hewlett-Packard Development Company, L.P. Non-blocking communication between an application and a server
US9917741B2 (en) * 2009-08-27 2018-03-13 Entit Software Llc Method and system for processing network activity data

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20040165610A1 (en) * 2003-02-26 2004-08-26 International Business Machines Corporation System and method for efficient replication and distribution of data objects
CN1784656A (zh) * 2003-05-09 2006-06-07 国际商业机器公司 监控数据处理系统中的操作数据

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
NETCOOL: "《Netcool/OMNIbus v7.1 Probe and Gateway Guide》", 《HTTP://PUBLIBFP.DHE.IBM.COM/EPUBS/PDF/C2363870.PDF》, 17 May 2007 (2007-05-17), pages 1 - 167 *

Cited By (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104516776A (zh) * 2013-10-07 2015-04-15 富士通株式会社 数据处理管理方法及信息处理设备
CN104516776B (zh) * 2013-10-07 2018-05-22 富士通株式会社 数据处理管理方法及信息处理设备
CN105373420A (zh) * 2014-08-28 2016-03-02 北京奇虎科技有限公司 数据传输方法及装置
CN105373420B (zh) * 2014-08-28 2019-12-06 北京奇虎科技有限公司 数据传输方法及装置
CN108345652A (zh) * 2017-01-23 2018-07-31 霍尼韦尔国际公司 用于使用并行性、无状态查询、数据切片或异步拉取机构处理安全系统中数据的系统和方法
CN108345652B (zh) * 2017-01-23 2023-12-19 霍尼韦尔国际公司 用于处理安全系统中数据的系统和方法
CN114840219A (zh) * 2022-07-06 2022-08-02 湖南傲思软件股份有限公司 分布式事件处理系统
CN114840219B (zh) * 2022-07-06 2023-05-05 湖南傲思软件股份有限公司 分布式事件处理系统
CN116755891A (zh) * 2023-08-21 2023-09-15 成都中科合迅科技有限公司 基于多线程的事件队列处理方法和系统
CN116755891B (zh) * 2023-08-21 2023-10-20 成都中科合迅科技有限公司 基于多线程的事件队列处理方法和系统

Also Published As

Publication number Publication date
DE112010004187T5 (de) 2012-08-09
CN102667718B (zh) 2016-02-03
US20110106941A1 (en) 2011-05-05
GB2487317A (en) 2012-07-18
US8930526B2 (en) 2015-01-06
GB2487317B (en) 2016-05-18
GB201203862D0 (en) 2012-04-18
WO2011051026A3 (en) 2011-11-03
WO2011051026A2 (en) 2011-05-05

Similar Documents

Publication Publication Date Title
CN102667718A (zh) 处理网络事件的方法和系统
US7689709B2 (en) Native format tunneling
US7685143B2 (en) Unified logging service for distributed applications
US7428597B2 (en) Content-based routing system and method
CN101246486B (zh) 用于改进的表达式处理的方法和装置
US20080275944A1 (en) Transaction-initiated batch processing
US20170038919A1 (en) Event-driven data processing system
CN110134385B (zh) 记录c语言函数调用链的方法及c语言通用日志框架
US10747573B2 (en) Virtualized execution across distributed nodes
EP3346379A1 (en) Database management system with dynamic allocation of database requests
US6981031B2 (en) Language independent message management for multi-node application systems
US6826591B2 (en) Flexible result data structure and multi-node logging for a multi-node application system
US11902119B2 (en) System and method for serverless monitoring
WO2022188589A1 (en) Microservice system with global context cache
US10620950B2 (en) Message parsing in a distributed stream processing system
US8819135B2 (en) Method of performing data mediation, and an associated computer program product, data mediation device and information system
CN110866022A (zh) 基于日志文件的数据解析方法、系统及装置
EP3123699B1 (en) System and method for supporting data types conversion in a heterogeneous computing environment
US8136087B2 (en) In-line processing of standardized text values
KR20160145250A (ko) 가상 머지를 지원하는 셔플 내장형 분산 스토리지 시스템 및 그 방법
US20060004838A1 (en) Sharing large objects in distributed systems
US11645137B2 (en) Exception management in heterogenous computing environment
CN108536842A (zh) 一种基于智能管理平台的文件自动归档方法及系统
JP7470769B1 (ja) クラウドのapiの変更を分析する方法
CN114064740B (zh) 用于查询数据的方法、设备和介质

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
C14 Grant of patent or utility model
GR01 Patent grant