CN117118824B - 一种日志数据收集方法及设备 - Google Patents

一种日志数据收集方法及设备 Download PDF

Info

Publication number
CN117118824B
CN117118824B CN202311364099.9A CN202311364099A CN117118824B CN 117118824 B CN117118824 B CN 117118824B CN 202311364099 A CN202311364099 A CN 202311364099A CN 117118824 B CN117118824 B CN 117118824B
Authority
CN
China
Prior art keywords
data
log data
log
indicating
event
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.)
Active
Application number
CN202311364099.9A
Other languages
English (en)
Other versions
CN117118824A (zh
Inventor
刘金松
施扬
张力
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.)
Chengdu Zhuozhou Technology Co ltd
Original Assignee
Chengdu Zhuozhou Technology Co ltd
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 Chengdu Zhuozhou Technology Co ltd filed Critical Chengdu Zhuozhou Technology Co ltd
Priority to CN202311364099.9A priority Critical patent/CN117118824B/zh
Publication of CN117118824A publication Critical patent/CN117118824A/zh
Application granted granted Critical
Publication of CN117118824B publication Critical patent/CN117118824B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L41/00Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
    • H04L41/06Management of faults, events, alarms or notifications
    • H04L41/069Management of faults, events, alarms or notifications using logs of notifications; Post-processing of notifications

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Debugging And Monitoring (AREA)

Abstract

本申请提供一种日志数据收集方法及设备,客户端设备针对发生的操作事件生成日志数据,日志数据包括用于指示操作事件的内容的内容指示数据,以及用于指示对日志数据进行排序的排序提示数据,其中,排序提示数据包括随机生成的唯一标识数据,用于指示操作事件所处进程的进程标识数据,以及用于指示操作事件在该进程中所处事件顺序的事件顺序标识数据,然后将日志数据存储在本地,并在满足预设的发送条件时,将多条日志数据组成的数据包发送给服务端设备,以供服务端设备根据数据包中各所述日志数据的排序提示数据对各日志数据进行排序,并将排序后的日志数据依序存入消息队列,通过排序提示数据保证了日志数据过程中日志数据的唯一性和顺序性。

Description

一种日志数据收集方法及设备
技术领域
本申请涉及网络技术领域,特别是涉及一种日志数据收集方法及设备。
背景技术
随着网络技术的不断发展,各网络系统平台各自有自己的用户,由于各个系统平台所具有的特点,能够适应特定的技术需求,因此在一个大的系统中,可能需要不同的平台实现各种特点的功能,为了实现对应的功能,可能需要对网络中产生的日志进行收集与分析。
目前,通常是由终端设备对用户的每一个操作和被动触发动作来进行大数据分析或者单个用户的用户行为分析, 需要保证每条日志的先后顺序,因此,在日志数据收集的过程中如何保证日志数据收集的先后顺序成为当前亟待解决的技术问题。
发明内容
本申请实施例的目的在于提供一种日志数据收集方法及设备,以解决上述技术问题。
一方面,提供一种日志数据收集,应用于客户端设备,所述方法包括:
所述客户端设备针对发生的操作事件生成日志数据;所述日志数据包括用于指示所述操作事件的内容的内容指示数据,以及用于指示对所述日志数据进行排序的排序提示数据;所述排序提示数据包括随机生成的唯一标识数据,用于指示所述操作事件所处进程的进程标识数据,以及用于指示所述操作事件在所述进程中所处事件顺序的事件顺序标识数据;
将所述日志数据存储在本地,并在满足预设的发送条件时,将多条所述日志数据组成的数据包发送给服务端设备,以供所述服务端设备根据所述数据包中各所述日志数据的所述排序提示数据对各所述日志数据进行排序,并将排序后的所述日志数据依序存入消息队列,以供所述服务端设备的消费者从所述消息队列中依序取出所述日志数据进行消费。
在其中一个实施例中,所述排序提示数据还包括用于指示所述操作事件发生时间的时间数据。
在其中一个实施例中,所述将所述日志数据存储在本地,包括:
将所述日志数据存入客户端设备内存的临时列表里,并将所述日志数据存入客户端设备硬盘的目标文件中。
在其中一个实施例中,所述将所述日志数据存入客户端设备硬盘的目标文件中,包括:
对所述日志数据进行加密;
将经加密处理的所述日志数据存入客户端设备硬盘的目标文件中。
在其中一个实施例中,在所述将多条所述日志数据组成的数据包发送给服务端设备之后,所述方法包括:
在确定多条所述日志数据组成的数据包被接收成功时,将所述客户端设备内存中组成所述数据包的所述日志数据删除,并将所述客户端设备硬盘中与所述日志数据对应的数据删除。
在其中一个实施例中,所述将多条所述日志数据组成的数据包发送给服务端设备,包括:
获取当前缓存的目标通信方式;
基于所述目标通信方式将多条所述日志数据组成的数据包发送给服务端设备。
在其中一个实施例中,在所述获取当前缓存的目标通信方式之前,所述方法包括:
对本地当前配置的CDN域名、IP地址、通信端口信息和通信协议信息中的至少一种进行周期性更新;
根据当前配置的所述CDN域名、所述IP地址、所述通信端口信息和所述通信协议信息确定当前的待选通信方式;
基于Keepalive技术从所述待选通信方式中确定出有效通信方式;
从所述有效通信方式中选择出目标通信方式进行缓存。
另一方面,提供了一种日志数据收集方法,应用于服务端设备,所述方法包括:
所述服务端设备接收客户端设备发送的数据包;所述数据包中包括多条日志数据,每一所述日志数据包括用于指示所述操作事件的内容的内容指示数据,以及用于指示对所述日志数据进行排序的排序提示数据;所述排序提示数据包括随机生成的唯一标识数据,用于指示所述操作事件所处进程的进程标识数据,以及用于指示所述操作事件在所述进程中所处事件顺序的事件顺序标识数据;
根据所述数据包中各所述日志数据的所述排序提示数据对各所述日志数据进行排序,并将排序后的所述日志数据依序存入消息队列,以供所述服务端设备的消费者从所述消息队列中依序取出所述日志数据进行消费。
在其中一个实施例中,所述根据所述数据包中各所述日志数据的所述排序提示数据对各所述日志数据进行排序,并将排序后的所述日志数据依序存入消息队列,包括:
确定发送所述数据包的所述客户端设备的设备标识;
根据所述数据包中各所述日志数据的所述排序提示数据对各所述日志数据进行排序;
将排序后的各所述日志数据与所述设备标识关联存入消息队列。
另一方面,提供了一种设备,包括处理器和存储器,所述存储器中存储有计算机程序,所述处理器执行所述计算机程序,以实现上述任一所述的方法。
通过本申请提供的日志数据收集方法及设备,客户端设备针对发生的操作事件生成日志数据,日志数据包括用于指示操作事件的内容的内容指示数据,以及用于指示对日志数据进行排序的排序提示数据,其中,排序提示数据包括随机生成的唯一标识数据,用于指示操作事件所处进程的进程标识数据,以及用于指示操作事件在该进程中所处事件顺序的事件顺序标识数据,然后将日志数据存储在本地,并在满足预设的发送条件时,将多条日志数据组成的数据包发送给服务端设备,以供服务端设备根据数据包中各所述日志数据的排序提示数据对各日志数据进行排序,并将排序后的日志数据依序存入消息队列,以供服务端设备的消费者从消息队列中依序取出日志数据进行消费,通过排序提示数据保证了日志数据过程中日志数据的唯一性和顺序性。
附图说明
图1为本申请实施例一提供的应用于客户端设备侧的日志数据收集方法的流程示意图;
图2为本申请实施例二提供的应用于服务端设备侧的日志数据收集方法的流程示意图;
图3为本申请实施例三提供的设备的结构示意图。
具体实施方式
为了使本申请的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本申请进行进一步详细说明。应当理解,此处描述的具体实施例仅仅用以解释本申请,并不用于限定本申请。
实施例一
目前,终端设备需要对用户的每一个操作和被动触发动作来进行大数据分析或者单个用户的用户行为分析, 需要保证每条日志的先后顺序,但是现有技术无法保证日志数据的顺序性,鉴于此,本申请实施例提供一种日志数据收集方法,可以应用于客户端设备,该客户端设备可以是任意可以生成日志数据的电子设备,比如,可以是笔记本电脑、台式电脑、可穿戴式设备等。
请参见图1所示,本申请实施例中的日志数据收集方法可以包括如下步骤:
S11:客户端设备针对发生的操作事件生成日志数据;日志数据包括用于指示操作事件的内容的内容指示数据,以及用于指示对日志数据进行排序的排序提示数据;排序提示数据包括随机生成的唯一标识数据,用于指示操作事件所处进程的进程标识数据,以及用于指示操作事件在进程中所处事件顺序的事件顺序标识数据。
S12:将日志数据存储在本地,并在满足预设的发送条件时,将多条日志数据组成的数据包发送给服务端设备,以供服务端设备根据数据包中各日志数据的排序提示数据对各日志数据进行排序,并将排序后的日志数据依序存入消息队列,以供服务端设备的消费者从消息队列中依序取出日志数据进行消费。
下面,对上述各步骤进行详细介绍。
本申请实施例中的操作事件是指发生在客户端设备上的操作事件,该操作事件可以是用户主动发起的,也可以是用户被动触发的。
目前,市面上存在各种系统的设备平台,例如,有IOS、Android、 Windows等,实现的编程语言各种各样,不同语言实现的复杂程度不一样, 开发成本极高, 由于不同语言需要不同的可靠性方案,所以难以保证服务端设备收集到数据的完整性,
在本申请实施例中,客户端设备可以通过调用golang接口进行日志数据的发送,将自己的日志数据发送给服务端设备,具体的,可以通过cgo 的 export 功能提供一个C的接口实现跨平台调用。
每一条日志数据包括用于指示操作事件的内容的内容指示数据,以及用于指示对日志数据进行排序的排序提示数据;排序提示数据包括随机生成的唯一标识数据,用于指示操作事件所处进程的进程标识数据,以及用于指示操作事件在进程中所处事件顺序的事件顺序标识数据。
示例性的,排序提示数据还可以包括用于指示操作事件发生时间的时间数据。以便于后续分析根据每一条日志数据的发生时间进行进一步的分析。
每一条日志数据的结构可以如下所示:
type Message struct
{
Time time.Time `json:",omitempty"`
RandId string `json:",omitempty"`
ProcessSessionId string `json:",omitempty"`
ProcessEventId int `json:",omitempty"`
ArgList []string `json:",omitempty"`
}
其中,Time表征时间数据,RandId表征随机生成的唯一标识数据,ProcessSessionId表征操作事件所处进程的进程标识数据,ProcessEventId表征操作事件在进程中所处事件顺序的事件顺序标识数据,ArgList表征内容指示数据,表示具体的操作内容。
本方案中为日志数据增加了唯一标识数据、进程标识数据和事件顺序标识数据,相当于是为日志数据增加了唯一性索引标识以及顺序性索引标识,可以保证每一日志数据的唯一性和顺序性。
可以理解的是,每当在客户端设备上发生一个操作事件,就可以根据该操作事件所属的进程生成对应的进程标识数据。
在第一种可选的实施方式中,可以预先针对该客户端设备的各进程预设其对应的进程身份标识,需要注意的是,各进程的进程身份标识互不相同,这样可以保证不同进程对应的进程标识不同,进一步保证日志数据的唯一性。当一个操作事件发生的时候,可以获取该操作事件所在的进程的进程身份标识,将其作为与该操作事件对应的日志数据中的进程标识数据,后续便可以分析出该日志数据是通过调用哪一进程生成的。
在第二种可选的实施方式中,考虑到客户端设备上进程较多,为不同的进程分别预设对应的进程身份标识工作量较大,所以在本实施方式中,也可以通过随机算法生成操作事件所处进程的进程标识。具体的,当第一个第一线程被调用时,针对该第一线程生成第一进程标识,通过调用该第一线程生成的日志数据中的进程标识数据均为该第一进程标识,当某一时刻有一个新的第二线程被调用,则针对该第二线程生成对应的第二进程标识,由于第一进程标识和第二进程标识均是通过随机算法生成的,所以可以将第二进程标识与第一进程标识进行比较,若比较结果为不一致,则可以进行后续的步骤,后续通过调用该第二线程生成的日志数据中的进程标识数据均为该第二进程标识,若比较结果为一致,则需要针对该第二线程生成一个新的第二进程标识,直至新的第二进程标识与第一进程标识不一致为止,如此,便可以保证不同进程对应的进程标识不同,进一步保证日志数据的唯一性。
同样的,每当在客户端设备上发生一个操作事件,还可以根据该操作事件在其所属的进程中所处的事件顺序生成对应的事件顺序标识数据,示例性的,针对每一进程里的操作事件,可以根据该操作事件被逻辑处理的顺序,确定其对应的顺序标识数据,客户端设备在对该某一线程的操作事件进行响应处理时,也即逻辑处理时,针对该线程而言,可以通过内存锁将逻辑处理入口堵住,这样,该线程里的其他操作事件就暂时不会被响应处理,可以根据各操作事件被逻辑处理的顺序生成线程内的顺序标识数据。本申请实施例中的同一进程里的操作事件的事件顺序标识数据是递增的数据,比如,第一个被逻辑处理的操作事件,其对应的顺序标识数据可以是1,第二个被逻辑处理的操作事件,其对应的顺序标识数据可以是2。
下面,对客户端设备本地存储日志数据的过程进行说明。
在本申请实施例中,可以将日志数据存储在客户端设备内存的临时列表里,和/或客户端设备硬盘的目标文件中。
优选的,可以将日志数据存入客户端设备内存的临时列表里,并将日志数据存入客户端设备硬盘的目标文件中。分别在内存和硬盘进行存储,可以更好地避免数据丢失的风险。
需要说明的是,在将日志数据存储至客户端设备硬盘的目标文件中时,可以对对日志数据进行加密,将经加密处理的日志数据存入客户端设备硬盘的目标文件中。
本申请实施例中可以通过AesCtr加密方式对日志数据进行加密,当然,也可以通过其他的加密方式对日志数据进行加密。
目标文件可以是预先设置的一个固定目录下的文件,用于存储客户端设备产生的日志数据。
需要说明的是,客户端设备硬盘里存储的日志数据可以不用按照顺序排序,可以在从客户端设备硬盘中读取日志数据时,按照上述排序提示数据进行排序即可,进程第一次启动的时候,可以把客户端设备硬盘里存储的日志数据依序读取、存储至客户端设备内存的临时列表里。
在步骤S12中,客户端设备可以周期性地向服务端设备发送日志数据,可以在预设的日志数据发送时间点到达时向服务端设备发送日志数据。示例性的,客户端设备可以每隔一个预设时间间隔就执行一次发送任务,发送任务具体为:将客户端设备内存的临时列表中的日志数据打包成数据包发送给服务端设备。服务端设备可以向客户端设备返回接收提示信息,以向客户端设备提示该数据包是否被成功接收。
在本申请实施例中,客户端设备在确定多条日志数据组成的数据包被接收成功时,将客户端设备内存中组成该数据包的日志数据删除,并将客户端设备硬盘中与该日志数据对应的数据删除。
下面对客户端设备向服务端设备发送数据包的过程进行说明。
在本申请实施例中,将多条日志数据组成的数据包发送给服务端设备,包括:
获取当前缓存的目标通信方式;
基于该目标通信方式将多条日志数据组成的数据包发送给服务端设备。
需要说明的是,该目标通信方式可以是上一计算周期缓存的最优通信方式。
在获取当前缓存的目标通信方式之前,所述方法包括以下步骤:
步骤一:对本地当前配置的CDN域名、IP地址、通信端口信息和通信协议信息中的至少一种进行周期性更新。
步骤二:根据当前配置的CDN域名、IP地址、通信端口信息和通信协议信息确定当前的待选通信方式;
步骤三:基于Keepalive技术从待选通信方式中确定出有效通信方式;
步骤四:从有效通信方式中选择出目标通信方式进行缓存。
需要说明的是,客户端设备可以周期性地确定出目标通信方式进行缓存,以供下一次需要发送数据包的时候,可以直接通过该目标通信方式进行发送。
具体的,客户端设备可以对本地当前配置的CDN域名、IP地址、通信端口信息和通信协议信息中的至少一种进行周期性更新,在需要确定目标通信方式的时候,根据当前配置的CDN域名、IP地址、通信端口信息和通信协议信息确定当前的待选通信方式,客户端设备可以通过Keepalive心跳包检测出可以ping 通的待选通信方式作为有效通信方式,然后选择传输时间最短的有效通信方式作为目标通信方式进行缓存。
对当前配置的CDN域名进行更新,可以是对CDN域名进行定时域名轮换,这样,当某一客户端设备上产生大量日志数据时,该日志数据就有机会通过不同的域名发送给客户端设备,这样就不会使通过某一域名发送的日志数据的数据量较大,造成无法绕过防火墙的检测。对IP地址更新同样如此。对通信端口信息进行更新可以是随机选用通信端口,也可以是对通信端口进行定时轮换。对通信协议信息进行更新可以是对通信协议进行定时轮换,通信协议包括但不限于tcp协议、https协议等。
也即是说,客户端设备可以通过Keepalive心跳包检测目标地址是否能 ping 通,目标地址为负载均衡所有服务端设备的IP地址、CDN域名、通信端口信息和通信协议信息确定的地址,并且每次通过Keepalive缓存一个最快的地址保证下次发送的时候用的是Fastest隧道,也即目标通信方式。本申请实施例中采用 IP + 多 CDN 域名轮换(定时换IP) + 多端口(443,80,tcp随机端口…) + 多协议(tcp, https…), 来保证可以绕过防火墙检测, 让全球的数据都能成功发送, 每次发送数据都能保证有一个可用的发送方式。
在本申请实施例中,客户端设备在向服务端设备发送数据包的时候,可以将自身的设备标识发送给客户端设备,以供客户端设备将排序后的各所述日志数据与所述设备标识关联存入消息队列。
实施例二
本申请实施例提供一种日志数据收集方法,应用于服务端设备,本申请实施例中的服务端设备可以是服务器,请参见图2所示,该方法可以包括:
S21:服务端设备接收客户端设备发送的数据包;数据包中包括多条日志数据,每一日志数据包括用于指示操作事件的内容的内容指示数据,以及用于指示对日志数据进行排序的排序提示数据;排序提示数据包括随机生成的唯一标识数据,用于指示操作事件所处进程的进程标识数据,以及用于指示操作事件在进程中所处事件顺序的事件顺序标识数据。
S22:根据数据包中各日志数据的排序提示数据对各日志数据进行排序,并将排序后的日志数据依序存入消息队列,以供服务端设备的消费者从消息队列中依序取出日志数据进行消费。
在步骤S22中,可以确定发送该数据包的客户端设备的设备标识,根据数据包中各日志数据的排序提示数据对各日志数据进行排序;将排序后的各日志数据与设备标识关联存入消息队列。
本申请实施例中的设备标识是指客户端设备的唯一身份标识。通常来说,服务端设备会接收网络中各种服务端设备发送的数据包,这里的数据包均是按照上述实施例一种生成并发送的数据包,这里不再赘述。所以,为了让服务端设备获取到该日志数据是由哪一个客户端设备发送的,客户端设备在向服务端设备发送日志数据的时候,可以将自身的设备标识一并发送给服务端设备。
本申请实施例中的消息队列可以是 Apache Kafka消息队列。
服务端设备在接收到数据包后,可以根据数据中各日志数据的RandId,ProcessSessionId 和 ProcessEventId 对日志数据进行排序进行排序, 得到一个顺序的用户行为列表, 然后写入 Apache Kafka 消息队列。
在需要分析或者渲染某个用户行为的场景时,可以直接从Apache Kafka消息队列里面取出依序存入的日志数据,并存进各应用场景对应的磁盘中。单个用户和数据整体分析可以存入到不同的 SQL Instance 里面, 保证业务之间相互不影响。
在本申请实施例中,通过Apache Kafka 来解决数据第一层缓存写入的效率问题,先把数据全吃进去, 然后由下一层 SQL Instance 来消费数据, 消费者将自己需求的日志数据读取出来,并存入磁盘, 这样可以不用担心数据量太大了有数据丢失的情况, 数据超出预期只需要把 Apache Kafka 机器的硬盘加大即可,并且Apache Kafka消息对垒给出来可以消费的数据是保证了顺序性的。
应该理解的是,虽然上述流程图中的各个步骤按照箭头的指示依次显示,但是这些步骤并不是必然按照箭头指示的顺序依次执行。除非本文中有明确的说明,这些步骤的执行并没有严格的顺序限制,这些步骤可以以其它的顺序执行。而且,上述流程图中的至少一部分步骤可以包括多个子步骤或者多个阶段,这些子步骤或者阶段并不必然是在同一时刻执行完成,而是可以在不同的时刻执行,这些子步骤或者阶段的执行顺序也不必然是依次进行,而是可以与其它步骤或者其它步骤的子步骤或者阶段的至少一部分轮流或者交替地执行。
需要说明的是,出于描述简洁的考量,上述实施例中描述过的内容在本实施例中不再赘述。
实施例三
基于同一发明构思,本申请实施例提供一种设备,设备包括处理器301和存储器302,存储器302中存储有计算机程序,处理器301和存储器302通过通信总线实现通信,处理器301执行该计算机程序,以实现上述实施例一中方法的各步骤,此时该设备为客户端设备。当然,该处理器301也可以执行该计算机程序,以实现上述实施例二中方法的各步骤,此时该设备为服务端设备。
可以理解,图3所示的结构仅为示意,终端设备还可包括比图3中所示更多或者更少的组件,或者具有与图3所示不同的配置。
处理器301可以是一种集成电路芯片,具有信号处理能力。上述处理器301可以是通用处理器,包括中央处理器(CPU)、网络处理器(NP)等;还可以是数字信号处理器(DSP)、专用集成电路(ASIC)、现成可编程门阵列(FPGA)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件。其可以实现或者执行本申请实施例中公开的方法、步骤及逻辑框图。通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等。
存储器302可以包括但不限于随机存取存储器(RAM),只读存储器(ROM),可编程只读存储器(PROM),可擦除只读存储器(EPROM),电可擦除只读存储器(EEPROM)等。
本实施例还提供了一种计算机可读存储介质,如软盘、光盘、硬盘、闪存、U盘、SD卡、MMC卡等,在该计算机存储介质中存储有实现上述各个步骤的一个或者多个程序,这一个或者多个程序可被一个或者多个处理器301执行,以实现上述实施例一中方法的各步骤,在此不再赘述。
需要说明的是,本实施例中所提供的图示仅以示意方式说明本发明的基本构想,遂图式中仅显示与本发明中有关的组件而非按照实际实施时的组件数目、形状及尺寸绘制,其实际实施时各组件的型态、数量及比例可为一种随意的改变,且其组件布局型态也可能更为复杂。本说明书所附图式所绘示的结构、比例、大小等,均仅用以配合说明书所揭示的内容,以供熟悉此技术的人士了解与阅读,并非用以限定本发明可实施的限定条件,故不具技术上的实质意义,任何结构的修饰、比例关系的改变或大小的调整,在不影响本发明所能产生的功效及所能达成的目的下,均应仍落在本发明所揭示的技术内容得能涵盖的范围内。同时,本说明书中所引用的如“上”、“下”、“左”、“右”、“中间”及“一”等的用语,亦仅为便于叙述的明了,而非用以限定本发明可实施的范围,其相对关系的改变或调整,在无实质变更技术内容下,当亦视为本发明可实施的范畴。
以上实施例的各技术特征可以进行任意的组合,为使描述简洁,未对上述实施例中的各个技术特征所有可能的组合都进行描述,然而,只要这些技术特征的组合不存在矛盾,都应当认为是本说明书记载的范围。
以上所述实施例仅表达了本申请的几种实施方式,其描述较为具体和详细,但并不能因此而理解为对发明专利范围的限制。应当指出的是,对于本领域的普通技术人员来说,在不脱离本申请构思的前提下,还可以做出若干变形和改进,这些都属于本申请的保护范围。因此,本申请专利的保护范围应以所附权利要求为准。

Claims (6)

1.一种日志数据收集方法,其特征在于,应用于客户端设备,所述方法包括:
所述客户端设备针对发生的操作事件生成日志数据;所述日志数据包括用于指示所述操作事件的内容的内容指示数据,以及用于指示对所述日志数据进行排序的排序提示数据;所述排序提示数据包括随机生成的唯一标识数据,用于指示所述操作事件所处进程的进程标识数据,以及用于指示所述操作事件在所述进程中所处事件顺序的事件顺序标识数据;
将所述日志数据存储在本地,并在满足预设的发送条件时,获取当前缓存的目标通信方式,基于所述目标通信方式将多条所述日志数据组成的数据包发送给服务端设备,以供所述服务端设备根据所述数据包中各所述日志数据的所述排序提示数据对各所述日志数据进行排序,并将排序后的所述日志数据依序存入消息队列,以供所述服务端设备的消费者从所述消息队列中依序取出所述日志数据进行消费;
在所述获取当前缓存的目标通信方式之前,所述方法包括:
对本地当前配置的CDN域名、IP地址、通信端口信息和通信协议信息中的至少一种进行周期性更新;
根据当前配置的所述CDN域名、所述IP地址、所述通信端口信息和所述通信协议信息确定当前的待选通信方式;
通过Keepalive心跳包检测目标地址是否能ping通,将能ping 通的所述待选通信方式作为有效通信方式;所述目标地址为负载均衡所有服务端设备的IP地址、CDN域名、通信端口信息和通信协议信息确定的地址;
选择传输时间最短的所述有效通信方式作为目标通信方式进行缓存。
2.如权利要求1所述的日志数据收集方法,其特征在于,所述排序提示数据还包括用于指示所述操作事件发生时间的时间数据。
3.如权利要求1所述的日志数据收集方法,其特征在于,所述将所述日志数据存储在本地,包括:
将所述日志数据存入客户端设备内存的临时列表里,并将所述日志数据存入客户端设备硬盘的目标文件中。
4.如权利要求3所述的日志数据收集方法,其特征在于,所述将所述日志数据存入客户端设备硬盘的目标文件中,包括:
对所述日志数据进行加密;
将经加密处理的所述日志数据存入客户端设备硬盘的目标文件中。
5.如权利要求3所述的日志数据收集方法,其特征在于,在所述将多条所述日志数据组成的数据包发送给服务端设备之后,所述方法包括:
在确定多条所述日志数据组成的数据包被接收成功时,将所述客户端设备内存中组成所述数据包的所述日志数据删除,并将所述客户端设备硬盘中与所述日志数据对应的数据删除。
6.一种设备,其特征在于,包括处理器和存储器,所述存储器中存储有计算机程序,所述处理器执行所述计算机程序,以实现如权利要求1-5中任一项所述的方法。
CN202311364099.9A 2023-10-20 2023-10-20 一种日志数据收集方法及设备 Active CN117118824B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202311364099.9A CN117118824B (zh) 2023-10-20 2023-10-20 一种日志数据收集方法及设备

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202311364099.9A CN117118824B (zh) 2023-10-20 2023-10-20 一种日志数据收集方法及设备

Publications (2)

Publication Number Publication Date
CN117118824A CN117118824A (zh) 2023-11-24
CN117118824B true CN117118824B (zh) 2024-02-27

Family

ID=88796877

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202311364099.9A Active CN117118824B (zh) 2023-10-20 2023-10-20 一种日志数据收集方法及设备

Country Status (1)

Country Link
CN (1) CN117118824B (zh)

Citations (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103036961A (zh) * 2012-12-07 2013-04-10 蓝盾信息安全技术股份有限公司 一种日志分布式收集及存储方法
CN103270499A (zh) * 2011-12-21 2013-08-28 华为技术有限公司 日志存储方法及系统
CN105376077A (zh) * 2014-08-06 2016-03-02 中国移动通信集团黑龙江有限公司 网络行为信息的处理方法、日志的发送方法、装置及系统
CN108351827A (zh) * 2015-10-07 2018-07-31 索利通系统株式会社 日志信息生成设备与存储介质以及日志信息抽取设备与存储介质
CN109558305A (zh) * 2017-09-27 2019-04-02 北京国双科技有限公司 日志数据排序方法及装置
CN110249314A (zh) * 2016-12-21 2019-09-17 斯瑞特斯塔克股份有限公司 用于基于云的操作系统事件和数据访问监视的系统和方法
CN114036360A (zh) * 2021-10-15 2022-02-11 网宿科技股份有限公司 网络爬虫拦截方法、装置、电子设备及可读存储介质
CN114138604A (zh) * 2021-12-01 2022-03-04 浪潮云信息技术股份公司 一种分布式数据库的事务日志处理方法及系统
CN115914409A (zh) * 2022-11-14 2023-04-04 中盈优创资讯科技有限公司 一种waf安全防护日志实现高效传输、存储的方法及装置
CN116595012A (zh) * 2023-07-17 2023-08-15 华中科技大学 一种基于非易失内存的时序数据库日志存储方法及系统

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104937886B (zh) * 2013-01-30 2017-10-24 日本电信电话株式会社 日志分析装置、信息处理方法

Patent Citations (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103270499A (zh) * 2011-12-21 2013-08-28 华为技术有限公司 日志存储方法及系统
CN103036961A (zh) * 2012-12-07 2013-04-10 蓝盾信息安全技术股份有限公司 一种日志分布式收集及存储方法
CN105376077A (zh) * 2014-08-06 2016-03-02 中国移动通信集团黑龙江有限公司 网络行为信息的处理方法、日志的发送方法、装置及系统
CN108351827A (zh) * 2015-10-07 2018-07-31 索利通系统株式会社 日志信息生成设备与存储介质以及日志信息抽取设备与存储介质
CN110249314A (zh) * 2016-12-21 2019-09-17 斯瑞特斯塔克股份有限公司 用于基于云的操作系统事件和数据访问监视的系统和方法
CN109558305A (zh) * 2017-09-27 2019-04-02 北京国双科技有限公司 日志数据排序方法及装置
CN114036360A (zh) * 2021-10-15 2022-02-11 网宿科技股份有限公司 网络爬虫拦截方法、装置、电子设备及可读存储介质
CN114138604A (zh) * 2021-12-01 2022-03-04 浪潮云信息技术股份公司 一种分布式数据库的事务日志处理方法及系统
CN115914409A (zh) * 2022-11-14 2023-04-04 中盈优创资讯科技有限公司 一种waf安全防护日志实现高效传输、存储的方法及装置
CN116595012A (zh) * 2023-07-17 2023-08-15 华中科技大学 一种基于非易失内存的时序数据库日志存储方法及系统

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
"Network Protocols for Security Professionals: Probe and identify network-based vulnerabilities and safeguard against network protocol breaches";Yoram Orzach 等;《Packt Publishing》;20221231;全文 *
蜜罐系统中日志服务器的安全性研究及实现;徐兰云;程京;邱飚;;湖南城市学院学报(自然科学版);20081215(第04期);全文 *

Also Published As

Publication number Publication date
CN117118824A (zh) 2023-11-24

Similar Documents

Publication Publication Date Title
US11855967B2 (en) Method for identifying application information in network traffic, and apparatus
US10013318B2 (en) Distributed event correlation system
US10218717B1 (en) System and method for detecting a malicious activity in a computing environment
CN109981653B (zh) 一种web漏洞扫描方法
JP2018531527A6 (ja) ネットワークトラフィックにおけるアプリケーション情報を識別するための方法および装置
CN111885050B (zh) 基于区块链网络的数据存储方法、装置、相关设备及介质
CN113067810B (zh) 网络抓包方法、装置、设备和介质
CN109309591B (zh) 流量数据统计方法、电子设备及存储介质
CN114465741B (zh) 一种异常检测方法、装置、计算机设备及存储介质
CN112929376A (zh) 一种流量数据的处理方法、装置、计算机设备和存储介质
CN113810381A (zh) 一种爬虫检测方法、web应用云防火墙、装置和存储介质
CN113965406A (zh) 网络阻断方法、装置、电子装置和存储介质
CN117118824B (zh) 一种日志数据收集方法及设备
CN116743619B (zh) 网络服务的测试方法、装置、设备及存储介质
CN113098852A (zh) 一种日志处理方法及装置
CN112257065A (zh) 一种进程事件处理方法和装置
CN115023919A (zh) 防火墙规则的更新方法、装置、服务器及存储介质
CN114205150B (zh) 容器环境的入侵防御方法及装置、电子设备、存储介质
JP3892322B2 (ja) 不正アクセス経路解析システム及び不正アクセス経路解析方法
CN110910249A (zh) 一种数据处理方法、装置、节点设备及存储介质
CN113691631B (zh) 一种数据清理的方法、装置及电子设备
CN113596105B (zh) 内容的获取方法、边缘节点及计算机可读存储介质
CN117319082B (zh) 一种apt攻击检测方法和系统
CN118041824A (zh) 测试旁路镜像功能的方法、装置、电子设备及存储介质
CN111787024A (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
GR01 Patent grant
GR01 Patent grant