CN114024838A - 日志处理方法、装置及电子设备 - Google Patents
日志处理方法、装置及电子设备 Download PDFInfo
- Publication number
- CN114024838A CN114024838A CN202111428032.8A CN202111428032A CN114024838A CN 114024838 A CN114024838 A CN 114024838A CN 202111428032 A CN202111428032 A CN 202111428032A CN 114024838 A CN114024838 A CN 114024838A
- Authority
- CN
- China
- Prior art keywords
- log
- processing
- data table
- time window
- data
- 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
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L41/00—Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
- H04L41/06—Management of faults, events, alarms or notifications
- H04L41/069—Management of faults, events, alarms or notifications using logs of notifications; Post-processing of notifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/90—Details of database functions independent of the retrieved data types
- G06F16/901—Indexing; Data structures therefor; Storage structures
- G06F16/9014—Indexing; Data structures therefor; Storage structures hash tables
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/90—Details of database functions independent of the retrieved data types
- G06F16/901—Indexing; Data structures therefor; Storage structures
- G06F16/9024—Graphs; Linked lists
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/90—Details of database functions independent of the retrieved data types
- G06F16/903—Querying
- G06F16/90335—Query processing
Landscapes
- Engineering & Computer Science (AREA)
- Databases & Information Systems (AREA)
- Theoretical Computer Science (AREA)
- Data Mining & Analysis (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Software Systems (AREA)
- Computational Linguistics (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Debugging And Monitoring (AREA)
Abstract
本申请涉及一种日志处理方法、装置及电子设备,该方法包括:实时接收日志流,并对接收的所述日志流中的各日志进行格式化;基于所述日志的IP信息进行哈希匹配,确定所述日志对应的IP数据表;获取钩子函数对所述日志进行处理,并将对所述日志进行处理的相关数据存储于所述IP数据表中。本申请以IP为核心,通过具体的应用实现基于IP维度的日志实时分析、处理,并通过IP数据表实现日志分析、处理中间状态的管理,无需使用中间件,能够有效提高日志处理效率,减少CPU、内存等的占用,且使CPU、内存等的使用更加可控,提高CPU、内存的效能,满足单机或低配置***运行的要求;本申请在对日志流进行处理后可以实时进行提取Top N提取,减少资源消耗和延时。
Description
技术领域
本申请涉及网络安全技术领域,具体涉及一种日志处理方法、装置及电子设备。
背景技术
在当前的网络安全领域,除了日益更新的对于攻击行为的检测和防护手段以外,对于各种网络日志的关联分析也成为了网络防护中的重要一环。
现有技术中,通常使用第三方引擎等中间件对日志进行分析,在分析过程中需要不断安装运行相应的中间件,安装使用不便,且第三方中间件通常适用于通配多场景的情况,针对安全事件多围绕IP的场景无特别支持,如此,存在功能冗余问题,且运行时容易导致CPU、内存、运行空间占用过多,导致日志分析、处理效率低,可控性较差,无法适应单机或低配置***运行的要求。
发明内容
鉴于现有技术存在的上述问题,本申请的目的在于提供一种日志处理方法、装置及电子设备,能够解决现有技术中进行日志分析、处理时,CPU和内存消耗较大、处理效率低、可控性差等问题。
为了实现上述目的,本申请实施例提供一种日志处理方法,包括:
实时接收日志流,并对接收的所述日志流中的各日志进行格式化;
基于所述日志的IP信息进行哈希匹配,确定所述日志对应的IP数据表;
获取钩子函数对所述日志进行处理,并将对所述日志进行处理的相关数据存储于所述IP数据表中。
在一些实施例中,基于所述日志的IP信息进行哈希匹配,确定所述日志对应的IP数据表,包括:
提取所述日志的源IP地址和目的IP地址;
分别计算所述源IP地址和目的IP地址的哈希值;
根据所述哈希值,从预设的IP哈希表中查找与所述日志的IP地址对应的IP数据;
获取所述IP数据对应的IP数据表。
在一些实施例中,所述方法还包括:
根据所述哈希值,通过内存位移获取对应的IP数据表的位置;
基于所述IP数据表的位置的存储属性确定最终的IP数据表。
在一些实施例中,获取钩子函数对所述日志进行处理,包括:
获取时间窗口计算函数和/或统计计算函数对所述日志进行处理。
在一些实施例中,获取时间窗口计算函数对所述日志进行处理,包括:
基于时间窗口的类型对所述日志进行处理,其中,所述时间窗口的类型包括触发式时间窗口、周期式时间窗口或间隔式时间窗口。
在一些实施例中,所述方法还包括:
基于对所述日志的处理结果,对对应的事件进行响应处理。
在一些实施例中,基于对所述日志的处理结果,对对应的事件进行响应处理,包括:
基于所述处理结果进行TOP N提取;和/或
在所述IP数据表的存储空间达到预设阈值时,进行告警并输出。
在一些实施例中,基于所述处理结果进行TOP N提取,包括:
通过计数的方式建立多条TOP N链表;
将对所述日志进行处理后得到的IP信息对应的统计值与对应的所述TOP N链表中的最小值或最大值进行比较;
基于比较结果确定所述TOP N链表中的最小值或最大值。
本申请实施例还提供一种日志处理装置,包括:
接收模块,配置为实时接收日志流,并对接收的所述日志流中的各日志进行格式化;
确定模块,配置为基于所述日志的IP信息进行哈希匹配,确定所述日志对应的IP数据表;
处理模块,配置为获取钩子函数对所述日志进行处理,并将对所述日志进行处理的相关数据存储于所述IP数据表中。
本申请实施例还提供一种电子设备,包括:
存储器,其中存储有计算机程序指令;
处理器,所述处理器执行所述计算机程序指令时实现上述的日志处理方法。
与现有技术相比较,本申请实施例提供的日志处理方法、装置及电子设备以IP为核心,通过具体的应用实现基于IP维度的日志实时分析、处理,并通过IP数据表实现日志分析、处理中间状态的管理,无需使用中间件,能够有效提高日志处理效率,减少CPU、内存等的占用,且使CPU、内存等的使用更加可控,提高CPU、内存的效能,满足单机或低配置***运行的要求。另外,本申请可以对实时获取的日志进行更加全面、深入的分析处理,可以提高日志处理的实时性、关联性、可解释性。另外,本申请在对日志流进行处理后可以实时进行提取Top N提取,提高网络安全日志处理中的TOP N提取的效率;且无需使用第三方中间件进行TOP N提取,无需在对日志进行处理后进行额外计算,可以减少资源消耗,并减少延时,提高日志处理效率。
附图说明
在不一定按比例绘制的附图中,相同的附图标记可以在不同的视图中描述相似的部件。具有字母后缀或不同字母后缀的相同附图标记可以表示相似部件的不同实例。附图大体上通过举例而不是限制的方式示出各种实施例,并且与说明书以及权利要求书一起用于对所申请的实施例进行说明。在适当的时候,在所有附图中使用相同的附图标记指代同一或相似的部分。这样的实施例是例证性的,而并非旨在作为本装置或方法的穷尽或排他实施例。
图1为本申请实施例的日志处理方法的流程图;
图2为本申请实施例的IP哈希表的结构示意图;
图3为本申请实施例的IP数据表的结构示意图;
图4为本申请实施例的时间窗口计算函数链表的结构示意图;
图5为本申请实施例的触发式时间窗口的结构示意图;
图6为本申请实施例的周期式时间窗口的结构示意图;
图7为本申请实施例的间隔式时间窗口的结构示意图;
图8为本申请实施例的日志处理装置的结构示意图。
具体实施方式
下面,结合附图对本申请的具体实施例进行详细的描述,但不作为本申请的限定。
应理解的是,可以对此处公开的实施例做出各种修改。因此,上述说明书不应该视为限制,而仅是作为实施例的范例。本领域的技术人员将想到在本申请的范围和精神内的其他修改。
包含在说明书中并构成说明书的一部分的附图示出了本申请的实施例,并且与上面给出的对本申请的大致描述以及下面给出的对实施例的详细描述一起用于解释本申请的原理。
通过下面参照附图对给定为非限制性实例的实施例的优选形式的描述,本申请的这些和其它特征将会变得显而易见。
还应当理解,尽管已经参照一些具体实例对本申请进行了描述,但本领域技术人员能够确定地实现本申请的很多其它等效形式,它们具有如权利要求所述的特征并因此都位于借此所限定的保护范围内。
当结合附图时,鉴于以下详细说明,本申请的上述和其他方面、特征和优势将变得更为显而易见。
此后参照附图描述本申请的具体实施例;然而,应当理解,所公开的实施例仅仅是本申请的实例,其可采用多种方式实施。熟知和/或重复的功能和结构并未详细描述以避免不必要或多余的细节使得本申请模糊不清。因此,本文所公开的具体的结构性和功能性细节并非意在限定,而是仅仅作为权利要求的基础和代表性基础用于教导本领域技术人员以实质上任意合适的详细结构多样地使用本申请。
图1为本申请实施例的日志处理方法的流程图。如图1所示,本申请实施例提供了一种日志处理方法,包括:
S101:实时接收日志流,并对接收的所述日志流中的各日志进行格式化。
本实施例中,日志处理方法应用于电子设备,电子设备包括但不限于服务器、台式计算机、数字TV等固定终端设备,以及手持设备(例如手机、平板电脑等)、车载设备、可穿戴设备(例如智能手表、智能手环、计步器等)等移动终端设备。
电子设备可以通过syslog或kafka等接口实时接收日志流,获取日志流的内容(各日志的日志信息)。
本实施例中,日志流是网络设备发送的不断实时更新的网络安全日志,可以用于检测网络信息传输过程中的攻击行为等。日志流也可以为其他日志流,例如电子设备的应用程序运行时的日志流,该日志流可以由应用程序的开发者发送。上述网络安全日志和应用程序运行时产生的应用程序日志均可以为***日志。
syslog广泛应用于***日志,电子设备可以对接收的syslog日志消息进行统一的存储,或者解析其中的内容做相应的处理。kafka是一个分布式的、高吞吐量、易于扩展的基于主题发布/订阅的消息***,kafka将日志看作消息,可以方便地对日志中的日志信息进行提取。具体实施中,还可以通过其他方式实时接收日志流。
在接收到日志流后,对日志流中的各日志进行格式化处理,实现日志的格式归一化,为后续日志处理和日志入库等做准备。本实施例中,经格式化后的日志的基本格式可以为[日志类型;源IP地址;目的IP地址;...]。即以数组的形式存储日志对应的各日志信息。
S102:基于所述日志的IP信息进行哈希匹配,确定所述日志对应的IP数据表。
具体地,在对获取的各日志进行格式化处理后,提取日志的源IP地址和目的IP地址进行哈希计算,得到两个哈希值(HASH值),然后将这两个哈希值与预设的IP哈希表进行匹配,查找要寻址的IP数据,然后基于查找到的IP数据,确定所述日志对应的IP数据表。
在一些实施例中,步骤S102具体包括如下步骤:
S1021:提取所述日志的源IP地址和目的IP地址;
S1022:分别计算所述源IP地址和目的IP地址的哈希值;
S1023:根据所述哈希值,从预设的IP哈希表中查找与所述日志的IP地址对应的IP数据;
S1024:获取所述IP数据对应的IP数据表。
具体实施中,先在***内建立一个预设的IP哈希表,IP哈希表的数据格式如图2所示,该表采用定长数组结构+链表结构。IP哈希表中每个IP数据对应一个IP冲突链表,并形成链式结构。
根据计算得到的日志的上述两个哈希值,从预设的IP哈希表中查找与日志的IP地址对应的IP数据,从而确定出与该IP数据对应的IP数据表。即根据日志的IP地址信息,查找对应的IP数据表。本实施例中,通过两个哈希值进行哈希匹配,可以提高匹配的准确性。
在一些实施例中,步骤S102还包括如下步骤:
S1025:根据所述哈希值,通过内存位移获取对应的IP数据表的位置;
S1026:基于所述IP数据表的位置的存储属性确定最终的IP数据表。
具体地,可以根据哈希值和预设的IP哈希表查询对应的IP数据表的位置,得到查询结果,并根据所述查询结果确定对应的IP数据表。
步骤S1026具体包括:
S10261:若所述IP数据表的位置为空,则将获取的所述IP数据表添加至所述位置;
S10262:若所述IP数据表的位置不为空,且所述日志中的IP地址与所述IP数据表中的IP地址相同,确定所述日志与所述IP数据表匹配;
S10263:若所述IP数据表的位置不为空,且所述日志中的IP地址与所述IP数据表中的IP地址不同,判断所述IP数据表是否存在老化;
S10264:若所述IP数据表存在老化,利用所述日志中的IP地址替换所述IP数据表中的IP地址;
S10265:若所述IP数据表不存在老化,则将所述日志的IP地址与所述预设的IP哈希表中下一IP数据的IP地址进行比较,确定最终的IP数据表,其中,所述下一IP数据为预设的IP哈希表中根据哈希值匹配出的IP数据链接的下一IP数据。
即步骤S10261中,在IP数据表的位置为空时添加IP数据表;步骤S10262中,IP地址一致,确定所述日志与所述IP数据表匹配;步骤S10263中,若IP地址不一致,先判断是否存在IP老化,即通信的IP和端口是否发生变化,以防止无法进行通信,若存在老化,基于当前的日志对原有的所述IP数据表进行占用,保证后续的日志处理;若不存在IP老化,可以确定IP可能存在冲突,沿预设的IP哈希表中IP冲突链表的顺序对下一个IP数据进行比较(重复步骤S10261至S10265),直至全部的IP冲突链表比较完成,如果已经比较到冲突链表的尾部,即全部IP数据对应的冲突链表已依次比较完成,则可以基于所述日志的IP信息创建新的IP数据链入IP冲突链表。
具体实施中,可以通过对不同的IP数据表添加标记以确定是否存在老化,例如,本实施例中,若IP数据表存在老化,则该IP数据表的老化标志为“TRUE”,若IP数据表不存在老化,标志为“FLASE”。
本实施例中,每个IP数据对应的IP数据表如图3所示,IP数据表中包含有IP地址、SYN报文统计、ACK报文统计、RST报文统计、攻击类型标记、流量统计、会话统计、时间戳、关联日志记录、预留空间等日志处理事项。
其中,SYN表示同步连接序号,SYN报文就是把将SYN标志设置为1,来请求建立连接;ACK表示请求/应答状态,0为请求,1为应答;RST表示连线复位,首先断开连接,然后重建。
具体实施中,IP数据表也可以为根据日志的IP生成的新的IP数据表,以便于对后续进行日志处理得到的相关数据进行存储。例如,S10261中,若所述IP数据表的位置为空,可以基于日志的IP信息生成与如图3所示的IP数据表的格式相同的一新的IP数据表,并添加至对应的位置。
由上可知,S1025和S1026可以单独执行,以确定对应的IP数据表及其位置。
S103:获取钩子函数对所述日志进行处理,并将对所述日志进行处理的相关数据存储于所述IP数据表中。
其中,钩子函数是对日志进行实时计算处理的函数,钩子函数以函数链表的形成存在。对所述日志进行处理的相关数据既可以包含对日志进行处理时所使用的数据,也可以包含对日志进行处理后得到的结果数据等。
根据日志确定对应的IP数据表后,调用相应的钩子函数对日志进行处理,并将处理后的日志相关数据存储于上述IP数据表。
本申请实施例提供的日志处理方法以IP为核心,通过具体的应用实现基于IP维度的日志实时分析、处理,并通过IP数据表实现日志分析、处理中间状态的管理,无需使用中间件,能够有效提高日志处理效率,减少CPU、内存等的占用,且使CPU、内存等的使用更加可控,提高CPU、内存的效能,满足单机或低配置***运行的要求。另外,本申请可以对实时获取的日志进行更加全面、深入的分析处理,可以提高日志处理的实时性、关联性、可解释性。
在一些实施例中,步骤S103中,获取钩子函数对所述日志进行处理,包括:
获取时间窗口计算函数和/或统计计算函数对所述日志进行处理。
上述用于对日志信息处理的函数链表可以包括时间窗口计算函数链表和/或统计计算函数链表。图4示出了一时间窗口计算函数链表的结构示意图。如图4所示,每个函数链表中均包含时间窗口条件和对应的函数指针,时间窗口条件存放在函数链表的头部,依据时间窗口条件判断是否进入时间窗口计算函数(或窗口处理函数)进行数据处理,当满足时间窗口条件时,时间窗口被触发,可以通过函数指针调用该函数链表中相应的函数对窗口内的日志数据使用时间窗口计算函数进行处理。当一函数链表对日志处理完成后,进入与该函数链表链接的下一函数链表,基于下一函数链表中的时间窗口条件调用对应的函数对日志进行处理,依次类推,直至全部的函数链表处理完成。
本实施例中,为了保证计算效率,在时间窗口计算函数中设置最小时间单位,也就是窗口大小必须是最小时间单位的整数倍。时间函数链会以最小时间单位为时间间隔,对整个时间窗口计算函数进行遍历。
具体利用时间窗口计算函数进行计算处理时,可以根据IP数据表中记录存储的时间戳,判断时间窗口是否被触发。
本实施例中,基于时间窗口的类型对所述日志进行处理。其中,所述时间窗口的类型包括:
(1)触发式时间窗口
如图5所示,当有数据符合时间窗口条件时,会触发时间窗口,开始在固定长度的窗口内对日志进行函数处理。
本实施例中,可以利用在IP数据表中存储的时间戳作为触发时间戳,确定实时日志所属的时间窗口,然后根据日志的时间戳,判断是否到达对应的时间窗口。当到达时间窗口时,进入对应的函数利用该函数对日志进行计算、处理。其中,对利用函数对日志进行计算、处理包括统计、查询、归并等。
触发式时间窗口的窗口长度固定,但相邻的窗口之间可以存在一定的时间间隔。
(2)周期式时间窗口
如图6所示,周期式窗口中每个窗口的大小相同,周期式窗口以窗口启动时间点作为起始,向后以固定的时间间隔建立多个时间窗口,可以在函数链表中的头部记录下一次进入时间窗口计算函数的时间戳,然后将日志对应的***时间与该时间戳进行比较确定是否进入函数,之后利用函数对日志数据进行相应的计算、处理。
(3)间隔式时间窗口
如图7所示,间隔式时间窗口的生效时间为某一日志事件发生到下一次事件发生的时候,如果两次事件中间的时间间隔超过预设时间间隔,则进入函数对日志进行处理。处理包括老化、重新开始计数等等。
本实施例中,基于日志中包含的时间戳确定日志对应的事件时间(时间发生的时间),当日志中不包含时间戳时,可以将实时接收日志时电子设备的***时间确定为事件时间,例如周期式窗口中可以根据***时间确定是否进入时间窗口计算函数。
统计计算函数作为日志命中触发的累加处理存在,脱离时间窗口,根据相应的日志触发相应的处理函数,进行流量计数、报文统计、会话统计等,并将统计得到的数据记录存在至IP数据表中,如图3所示,可以进行相应的SYN报文统计、ACK报文统计、RST报文统计等。
本实施例中,日志的具体处理过程中通过加载函数链完成日志流的实时处理工作,而且利用头部的时间窗口条件进行过滤,避免频繁进入或退出函数的动作,保证处理的连续性。
进一步地,本实施例中将IP数据表作为整个实时日志分析、处理的中间存储空间存在,用于记录相关的步骤S103中相关的钩子函数处理的中间状态数据,保证调用钩子函数进行日志处理的状态连续性。
在一些实施例中,所述方法还包括:
S104:基于对所述日志的处理结果,对对应的事件进行响应处理。
步骤S104具体可以包括:
基于所述处理结果进行TOP N提取;和/或
在所述IP数据表的存储空间达到预设阈值时,进行告警并输出。
在一些实施例中,基于所述处理结果进行TOP N提取,包括:
S201:通过计数的方式建立多条TOP N链表;
S202:将对所述日志进行处理后得到的IP信息对应的统计值与对应的所述TOP N链表中的最小值或最大值进行比较;
S203:基于比较结果确定所述TOP N链表中的最小值或最大值。
TOP N提取为使用快排法,查找最大或最小的N个链表。具体地,以提取TOP N链表中的最小的N个链表为例,对步骤S201至S203进行具体说明。通过不同的计数方式建立多条TOP N链表,在对应的钩子函数处理完成后,将得到的IP信息对应的统计值和对应的TOP N链表中的最小值进行比较,如果该统计值小于最小值,则在链表长度小于N的时候加入链表,并取代链表最小值,如果链表长度等于N,则不作动作;如果该统计值大于最小值,则在链表长度小于N的时候加入链表,链表的最小值不变,而如果链表长度等于N,则删除最小值节点,取代该最小值。
可以理解的是,上述TOP N链表的最小值为一个大概的最小值,并不一定时链表的最小值。当出现短暂的最小值不符之后,可以继续运行,运行一段时间后,TOP N会大致保持准确度,这个准确度可以适用于网络安全领域的概率问题。
进一步地,上述TOP N提取也可以应用于统计IP数表中存在老化的情况,还可以适用于步骤S103中利用钩子函数对日志进行的函数处理,例如通过TOP N提取进行清空链表等操作。
本实施例中,在对日志流进行处理后,通过实时提取Top N链表的方式,可以提高网络安全日志处理中的TOP N提取的效率;且无需使用第三方中间件进行TOP N提取,无需在对日志进行处理后进行额外计算,可以减少资源消耗,并减少延时,提高日志处理效率。
本实施例中,在进行日志处理时,在所述IP数据表的存储空间达到预设阈值时,及时进行告警并输出,以提示用户,从而可以对数据进行转存或清理部分无效数据,防止数据丢失或未有效存储。
图8为本申请实施例的日志处理装置的结构示意图。如图8所示,基于上述日志处理方法,本申请实施例提供一种日志处理装置,包括:
接收模块801,配置为实时接收日志流,并对接收的所述日志流中的各日志进行格式化;
确定模块802,配置为基于所述日志的IP信息进行哈希匹配,确定所述日志对应的IP数据表;
处理模块803,配置为获取钩子函数对所述日志进行处理,并将对所述日志进行处理的相关数据存储于所述IP数据表中。
在一些实施例中,确定模块802具体配置为:
提取所述日志的源IP地址和目的IP地址;
分别计算所述源IP地址和目的IP地址的哈希值;
根据所述哈希值,从预设的IP哈希表中查找与所述日志的IP地址对应的IP数据;
获取所述IP数据对应的IP数据表。
在一些实施例中,确定模块802进一步配置为:
根据所述哈希值,通过内存位移获取对应的IP数据表的位置;
基于所述IP数据表的位置的存储属性确定最终的IP数据表。
在一些实施例中,处理模块803具体配置为:
获取时间窗口计算函数和/或统计计算函数对所述日志进行处理。
在一些实施例中,处理模块803进一步配置为:
基于时间窗口的类型对所述日志进行处理,其中,所述时间窗口的类型包括触发式时间窗口、周期式时间窗口或间隔式时间窗口。
在一些实施例中,处理模块803还配置为:
基于对所述日志的处理结果,对对应的事件进行响应处理。
在一些实施例中,处理模块803进一步配置为:
基于所述处理结果进行TOP N提取;和/或
在所述IP数据表的存储空间达到预设阈值时,进行告警并输出。
在一些实施例中,处理模块803进一步配置为:
通过计数的方式建立多条TOP N链表;
将对所述日志进行处理后得到的IP信息对应的统计值与对应的所述TOP N链表中的最小值或最大值进行比较;
基于比较结果确定所述TOP N链表中的最小值或最大值。
可以理解的是,本申请实施例提供的日志处理装置与上述实施例中日志处理方法相对应,基于上述的日志处理方法,本领域的技术人员能够了解本申请实施例中日志处理装置具体实施方式以及其各种变化形式,日志处理方法实施例中的任何可选项也适用于日志处理装置,在此不再赘述。
本申请实施例还提供了一种电子设备,包括:
存储器,其中存储有计算机程序指令;
处理器,所述处理器执行所述计算机程序指令时实现上述的日志处理方法。
存储器可能包括易失性存储器(例如,随机存取存储器(random-access memory,RAM),其可包括易失性RAM、磁性RAM、铁电RAM以及任何其他适合的形式),也可能包括非易失性存储器(例如,磁盘存储器、闪速存储器、可擦除可编程只读存储器(erasableprogrammable read-only memory,EPROM)、电可擦除可编程只读存储器(electricallyerasable programmable read-only memory,EEPROM)、基于忆阻器的非易失性固态存储器等)。
处理器可以是通用处理器,包括中央处理器CPU、网络处理器(networkprocessor,NP)等;还可以是数字信号处理器DSP、专用集成电路ASIC、现场可编程门阵列FPGA或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件。
电子设备还可以包括通信接口和通信总线,通信接口用于与外接设备(例如网络设备)进行通信,处理器、存储器、通信接口之间通过所述通信总线进行相互通信。
本申请实施例还提供了一种计算机可读存储介质,其上存储有计算机可执行指令,所述计算机可执行指令由处理器执行时,实现上述的日志处理方法。
以上实施例仅为本申请的示例性实施例,不用于限制本申请,本申请的保护范围由权利要求书限定。本领域技术人员可以在本申请的实质和保护范围内,对本申请做出各种修改或等同替换,这种修改或等同替换也应视为落在本申请的保护范围内。
Claims (10)
1.一种日志处理方法,其特征在于,包括:
实时接收日志流,并对接收的所述日志流中的各日志进行格式化;
基于所述日志的IP信息进行哈希匹配,确定所述日志对应的IP数据表;
获取钩子函数对所述日志进行处理,并将对所述日志进行处理的相关数据存储于所述IP数据表中。
2.根据权利要求1所述的方法,其特征在于,基于所述日志的IP信息进行哈希匹配,确定所述日志对应的IP数据表,包括:
提取所述日志的源IP地址和目的IP地址;
分别计算所述源IP地址和目的IP地址的哈希值;
根据所述哈希值,从预设的IP哈希表中查找与所述日志的IP地址对应的IP数据;
获取所述IP数据对应的IP数据表。
3.根据权利要求2所述的方法,其特征在于,所述方法还包括:
根据所述哈希值,通过内存位移获取对应的IP数据表的位置;
基于所述IP数据表的位置的存储属性确定最终的IP数据表。
4.根据权利要求1所述的方法,其特征在于,获取钩子函数对所述日志进行处理,包括:
获取时间窗口计算函数和/或统计计算函数对所述日志进行处理。
5.根据权利要求4所述的方法,其特征在于,获取时间窗口计算函数对所述日志进行处理,包括:
基于时间窗口的类型对所述日志进行处理,其中,所述时间窗口的类型包括触发式时间窗口、周期式时间窗口或间隔式时间窗口。
6.根据权利要求1所述的方法,其特征在于,所述方法还包括:
基于对所述日志的处理结果,对对应的事件进行响应处理。
7.根据权利要求6所述的方法,其特征在于,基于对所述日志的处理结果,对对应的事件进行响应处理,包括:
基于所述处理结果进行TOP N提取;和/或
在所述IP数据表的存储空间达到预设阈值时,进行告警并输出。
8.根据权利要求7所述的方法,其特征在于,基于所述处理结果进行TOP N提取,包括:
通过计数的方式建立多条TOP N链表;
将对所述日志进行处理后得到的IP信息对应的统计值与对应的所述TOP N链表中的最小值或最大值进行比较;
基于比较结果确定所述TOP N链表中的最小值或最大值。
9.一种日志处理装置,其特征在于,包括:
接收模块,配置为实时接收日志流,并对接收的所述日志流中的各日志进行格式化;
确定模块,配置为基于所述日志的IP信息进行哈希匹配,确定所述日志对应的IP数据表;
处理模块,配置为获取钩子函数对所述日志进行处理,并将对所述日志进行处理的相关数据存储于所述IP数据表中。
10.一种电子设备,其特征在于,包括:
存储器,其中存储有计算机程序指令;
处理器,所述处理器执行所述计算机程序指令时实现如权利要求1至8中任一项述的日志处理方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202111428032.8A CN114024838A (zh) | 2021-11-26 | 2021-11-26 | 日志处理方法、装置及电子设备 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202111428032.8A CN114024838A (zh) | 2021-11-26 | 2021-11-26 | 日志处理方法、装置及电子设备 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN114024838A true CN114024838A (zh) | 2022-02-08 |
Family
ID=80066991
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202111428032.8A Pending CN114024838A (zh) | 2021-11-26 | 2021-11-26 | 日志处理方法、装置及电子设备 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN114024838A (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN114675991A (zh) * | 2022-03-28 | 2022-06-28 | 苏州浪潮智能科技有限公司 | 一种实现日志有效定位的方法、***、设备和存储介质 |
Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2005323322A (ja) * | 2004-04-08 | 2005-11-17 | Hitachi Ltd | ログ情報の蓄積および解析システム |
CN101325520A (zh) * | 2008-06-17 | 2008-12-17 | 南京邮电大学 | 基于日志的智能自适应网络故障定位和分析方法 |
CN103532876A (zh) * | 2013-10-23 | 2014-01-22 | 中国科学院声学研究所 | 数据流的处理方法与*** |
CN103812679A (zh) * | 2012-11-12 | 2014-05-21 | 深圳中兴网信科技有限公司 | 一种海量日志统计分析***和方法 |
WO2015146086A1 (ja) * | 2014-03-28 | 2015-10-01 | 日本電気株式会社 | ログ分析システム、障害原因分析システム、ログ分析方法、および、記録媒体 |
CN111258971A (zh) * | 2020-01-10 | 2020-06-09 | 北京农信互联科技集团有限公司 | 一种基于访问日志的应用状态监控报警***及方法 |
-
2021
- 2021-11-26 CN CN202111428032.8A patent/CN114024838A/zh active Pending
Patent Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2005323322A (ja) * | 2004-04-08 | 2005-11-17 | Hitachi Ltd | ログ情報の蓄積および解析システム |
CN101325520A (zh) * | 2008-06-17 | 2008-12-17 | 南京邮电大学 | 基于日志的智能自适应网络故障定位和分析方法 |
CN103812679A (zh) * | 2012-11-12 | 2014-05-21 | 深圳中兴网信科技有限公司 | 一种海量日志统计分析***和方法 |
CN103532876A (zh) * | 2013-10-23 | 2014-01-22 | 中国科学院声学研究所 | 数据流的处理方法与*** |
WO2015146086A1 (ja) * | 2014-03-28 | 2015-10-01 | 日本電気株式会社 | ログ分析システム、障害原因分析システム、ログ分析方法、および、記録媒体 |
CN111258971A (zh) * | 2020-01-10 | 2020-06-09 | 北京农信互联科技集团有限公司 | 一种基于访问日志的应用状态监控报警***及方法 |
Non-Patent Citations (1)
Title |
---|
赵慧然;石磊;: "Hook技术及其应用", 科技资讯, no. 06, pages 70 - 71 * |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN114675991A (zh) * | 2022-03-28 | 2022-06-28 | 苏州浪潮智能科技有限公司 | 一种实现日志有效定位的方法、***、设备和存储介质 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN108737333B (zh) | 一种数据检测方法以及装置 | |
CN109831461B (zh) | 一种分布式拒绝服务DDoS攻击防御方法及装置 | |
WO2021017884A1 (zh) | 数据处理方法、装置及网关服务器 | |
CN108810116B (zh) | 消息处理方法及相关产品 | |
CN110809010B (zh) | 威胁信息处理方法、装置、电子设备及介质 | |
CN109818970B (zh) | 一种数据处理方法及装置 | |
CN108632112B (zh) | 网络检测方法、装置、计算机可读存储介质和计算机设备 | |
CN108390856B (zh) | 一种DDoS攻击检测方法、装置及电子设备 | |
CN111585837B (zh) | 物联网数据链路监控方法、装置、计算机设备和存储介质 | |
EP4075749A1 (en) | Detection method and detection device for heavy flow data stream | |
CN110958245B (zh) | 一种攻击的检测方法、装置、设备和存储介质 | |
CN104967632B (zh) | 网页异常数据处理方法、数据服务器及*** | |
CN114024838A (zh) | 日志处理方法、装置及电子设备 | |
CN110311963B (zh) | 消息推送方法、装置、计算机设备及计算机可读存储介质 | |
CN113660215A (zh) | 基于Web应用防火墙的攻击行为检测方法以及装置 | |
CN111309696A (zh) | 日志处理方法及装置、电子设备、可读介质 | |
CN108566382B (zh) | 基于规则生命周期检测的防火墙自适应能力提升方法 | |
US20200097341A1 (en) | Adaptive event aggregation | |
WO2024027079A1 (zh) | 域名反射攻击检测方法及装置、电子设备、存储介质 | |
CN114172831B (zh) | 暴力破解方法、***、计算机及存储介质 | |
CN113992364B (zh) | 一种网络数据包阻断优化方法以及*** | |
CN113965367B (zh) | 策略对象上限控制方法、***、计算机及存储介质 | |
CN109542662B (zh) | 一种内存管理方法、装置、服务器及存储介质 | |
WO2018077138A1 (zh) | 数据配置方法、索引管理方法、相关装置以及计算设备 | |
CN115225544A (zh) | 一种网络流量统计和监测方法、装置、电子设备及介质 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination |