CN112347165A - 日志处理方法、装置及服务器和计算机可读存储介质 - Google Patents
日志处理方法、装置及服务器和计算机可读存储介质 Download PDFInfo
- Publication number
- CN112347165A CN112347165A CN201910731271.7A CN201910731271A CN112347165A CN 112347165 A CN112347165 A CN 112347165A CN 201910731271 A CN201910731271 A CN 201910731271A CN 112347165 A CN112347165 A CN 112347165A
- Authority
- CN
- China
- Prior art keywords
- log
- original
- elements
- type
- plug
- 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
Links
- 238000003672 processing method Methods 0.000 title claims abstract description 32
- 238000000605 extraction Methods 0.000 claims abstract description 60
- 238000012550 audit Methods 0.000 claims abstract description 15
- 238000012545 processing Methods 0.000 claims description 26
- 238000004458 analytical method Methods 0.000 claims description 19
- 230000004044 response Effects 0.000 claims description 7
- 238000004590 computer program Methods 0.000 claims description 5
- 238000000034 method Methods 0.000 abstract description 21
- 238000010586 diagram Methods 0.000 description 8
- 230000008569 process Effects 0.000 description 7
- 239000000284 extract Substances 0.000 description 5
- 238000012546 transfer Methods 0.000 description 5
- 230000005540 biological transmission Effects 0.000 description 4
- 230000009471 action Effects 0.000 description 3
- 238000004891 communication Methods 0.000 description 3
- 238000012986 modification Methods 0.000 description 3
- 230000004048 modification Effects 0.000 description 3
- 238000013473 artificial intelligence Methods 0.000 description 2
- 230000000694 effects Effects 0.000 description 2
- 238000012544 monitoring process Methods 0.000 description 2
- 101001094649 Homo sapiens Popeye domain-containing protein 3 Proteins 0.000 description 1
- 101000608234 Homo sapiens Pyrin domain-containing protein 5 Proteins 0.000 description 1
- 101000578693 Homo sapiens Target of rapamycin complex subunit LST8 Proteins 0.000 description 1
- 102100027802 Target of rapamycin complex subunit LST8 Human genes 0.000 description 1
- 230000006399 behavior Effects 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 238000010801 machine learning Methods 0.000 description 1
- 238000004519 manufacturing process Methods 0.000 description 1
- 238000013507 mapping Methods 0.000 description 1
- 230000005055 memory storage Effects 0.000 description 1
- 230000002085 persistent effect Effects 0.000 description 1
- 230000000750 progressive effect Effects 0.000 description 1
- 230000009467 reduction Effects 0.000 description 1
- 238000009877 rendering Methods 0.000 description 1
- 238000011160 research Methods 0.000 description 1
- 238000012360 testing method Methods 0.000 description 1
- 230000001052 transient effect Effects 0.000 description 1
Images
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/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/25—Integrating or interfacing systems involving database management systems
- G06F16/258—Data format conversion from or to a database
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/24—Querying
- G06F16/245—Query processing
- G06F16/2455—Query execution
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/30—Information retrieval; Database structures therefor; File system structures therefor of unstructured textual data
- G06F16/33—Querying
- G06F16/3331—Query processing
- G06F16/334—Query execution
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02D—CLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
- Y02D10/00—Energy efficient computing, e.g. low power processors, power management or thermal management
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Databases & Information Systems (AREA)
- Data Mining & Analysis (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Computational Linguistics (AREA)
- Debugging And Monitoring (AREA)
Abstract
本申请公开了一种日志处理方法、装置、系统及一种服务器和计算机可读存储介质,该方法包括:利用日志源插件获取原始日志,并确定所述原始日志的日志类型;利用所述日志类型对应的标记提取插件提取所述原始日志的要素;其中,所述要素包括标准要素和自定义要素,所述标准要素包括主体、客体、时间和操作类型;根据所述要素基于标准上报格式确定所述原始日志的扩展字段,以便得到所述原始日志对应的扩展日志;将所述扩展日志存储至目标存储器中,以便利用所述扩展日志进行操作审计。本申请提供的日志处理方法,从没有格式化的原始日志中,抽取统一的要素标记,使得原本完全不同的原始日志可以采用相同的方法查询关键信息,提高了日志审计效率。
Description
技术领域
本申请涉及日志处理技术领域,更具体地说,涉及日志处理方法、装置及服务器和计算机可读存储介质。
背景技术
在相关技术中,最常用的日志收集处理方法是ELK方案,即通过elasticsearch+logstash+kibana来收集、加工、存储日志以及生成图表进行展示。
但是ELK方案仅仅提供了收集、加工、存储日志以及生成图表的工具,对于来源于不同系统的原始日志,由于其格式不同,为后续日志审计造成了很大的不便。
因此,如何对不同系统的原始日志进行格式化处理,进而提高日志审计效率是本领域技术人员需要解决的技术问题。
发明内容
本申请的目的在于提供一种日志处理方法、装置及一种服务器和一种计算机可读存储介质,对不同系统的原始日志进行格式化处理,进而提高了日志审计效率。
为实现上述目的,本申请第一方面提供了一种日志处理方法,包括:
利用日志源插件获取原始日志,并确定所述原始日志的日志类型;
利用所述日志类型对应的标记提取插件提取所述原始日志的要素;其中,所述要素包括标准要素和自定义要素,所述标准要素包括主体、客体、时间和操作类型;
根据所述要素基于标准上报格式确定所述原始日志的扩展字段,以便得到所述原始日志对应的扩展日志;
将所述扩展日志存储至目标存储器中,以便利用所述扩展日志进行操作审计。
结合本申请的第一方面,在本申请第一方面的第一种实施方式中,所述利用日志源插件获取原始日志,包括:
利用kafka源插件获取kafka队列中的原始日志;
和/或,利用数据插件获取数据库中的原始日志;
和/或,利用上报接口插件通过接口获取上报的原始日志。
结合本申请的第一方面,在本申请第一方面的第二种实施方式中,所述日志类型包括结构化类型、sql类型和文本类型。
结合本申请的第一方面,在本申请第一方面的第三种实施方式中,所述利用所述日志类型对应的标记提取插件提取所述原始日志的要素,包括:
利用所述日志类型对应的标记提取插件根据所述原始日志中的请求报文和响应报文提取所述原始日志的客体。
结合本申请的第一方面,在本申请第一方面的第四种实施方式中,所述客体的参数类型至少包括客体类型和客体名称。
结合本申请的第一方面,在本申请第一方面的第五种实施方式中,所述目标存储器包括elasticsearch集群或目标数据库。
结合本申请的第一方面、本申请第一方面的第一种实施方式、本申请第一方面的第二种实施方式、本申请第一方面的第三种实施方式、本申请第一方面的第四种实施方式、本申请第一方面的第五种实施方式,在本申请第一方面的第六种实施方式中,所述利用所述日志类型对应的标记提取插件提取所述原始日志的要素,包括:
对所述原始日志进行结构化解析,从解析结果中提取所述原始日志的要素;
和/或,通过druid库对所述原始日志中的sql语句进行解析,从解析结果中提取所述原始日志的要素;
和/或,利用正则表达式提取所述原始日志的要素。
为实现上述目的,本申请第二方面提供了一种日志处理装置,包括:
获取模块,用于利用日志源插件获取原始日志,并确定所述原始日志的日志类型;
提取模块,用于利用所述日志类型对应的标记提取插件提取所述原始日志的要素;其中,所述要素包括标准要素和自定义要素,所述标准要素包括主体、客体、时间和操作类型;
确定模块,用于根据所述要素基于标准上报格式确定所述原始日志的扩展字段,以便得到所述原始日志对应的扩展日志;
存储模块,用于将所述扩展日志存储至目标存储器中。
为实现上述目的,本申请第三方面提供了一种服务器,包括:
处理器和存储器;
其中,所述处理器用于执行所述存储器中存储的程序;
所述存储器用于存储程序,所述程序至少用于:
利用日志源插件获取原始日志,并确定所述原始日志的日志类型;
利用所述日志类型对应的标记提取插件提取所述原始日志的要素;其中,所述要素包括标准要素和自定义要素,所述标准要素包括主体、客体、时间和操作类型;
根据所述要素基于标准上报格式确定所述原始日志的扩展字段,以便得到所述原始日志对应的扩展日志;
将所述扩展日志存储至目标存储器中,以便利用所述扩展日志进行操作审计。
为实现上述目的,本申请第四方面提供了一种计算机可读存储介质,所述计算机可读存储介质上存储有计算机程序,所述计算机程序被处理器执行时实现如上述日志处理方法的步骤。
通过以上方案可知,本申请提供的一种日志处理方法,包括:利用日志源插件获取原始日志,并确定所述原始日志的日志类型;利用所述日志类型对应的标记提取插件提取所述原始日志的要素;其中,所述要素包括标准要素和自定义要素,所述标准要素包括主体、客体、时间和操作类型;根据所述要素基于标准上报格式确定所述原始日志的扩展字段,以便得到所述原始日志对应的扩展日志;将所述扩展日志存储至目标存储器中,以便利用所述扩展日志进行操作审计。
本申请提供的日志处理方法,利用不同的标记提取插件对来源于不同系统的原始日志进行要素提取,并基于标准上报格式对这些要素进行存储,即生成扩展字段。由此可见,本申请提供一种通用的日志处理方法,从各种系统收集到的、没有格式化的原始日志中,抽取统一的要素标记,使得原本完全不同的原始日志可以采用相同的方法查询关键信息,提高了日志审计效率。本申请还公开了一种日志处理装置及一种服务器和一种计算机可读存储介质,同样能实现上述技术效果。
应当理解的是,以上的一般描述和后文的细节描述仅是示例性的,并不能限制本申请。
附图说明
为了更清楚地说明本申请实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。附图是用来提供对本公开的进一步理解,并且构成说明书的一部分,与下面的具体实施方式一起用于解释本公开,但并不构成对本公开的限制。在附图中:
图1为本申请实施例提供的一种日志处理系统的架构图;
图2为本申请实施例提供的一种日志处理流水线的示意图;
图3为本申请实施例提供的另一种日志处理系统的架构图;
图4为本申请实施例提供的一种日志处理方法的流程图;
图5为本申请实施例提供的另一种日志处理方法的流程图;
图6为本申请实施例提供的一种日志处理装置的结构图;
图7为本申请实施例提供的一种服务器的结构图。
具体实施方式
下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。
为了便于理解本申请提供的日志处理方法,下面对其使用的系统进行介绍。参见图1,其示出了本申请实施例提供的一种日志处理系统的架构图,如图1所示,包括服务器10、日志源20和目标存储器30,服务器10与日志源20之间、服务器10与目标存储器30之间通过网络40通信连接。
其中,此处不限定日志源的数量,即日志源20可以包括多个日志源,每个日志源可以理解为一个用于存储日志的存储器,如kafka队列或数据库等。每个日志源可以维护一个系统产生的日志,也可以维护多个系统产生的日志,在此不进行具体限定,这些日志在后续实施例中统一称为原始日志。
服务器10中包含多个日志源插件,多个日志源插件可以以集群的方式存储在服务器10中,每个日志源插件用于获取其对应的日志源中的原始日志,通过网络40将不同日志源20中存储的原始日志传输至服务器10中,因此,随着日志源20种类的增加,上述集群可扩展。
本申请的发明人研究发现,来自不同日志源的原始日志,由于其格式不同,不便于操作审计。因此,在本申请中,服务器10中还包含多个标记提取插件,多个标记提取插件可以以集群的方式存储在服务器10中,每个标记提取插件用于从其对应的日志类型的原始日志中提取要素,可以理解的是,随着日志类型的增加,上述存储标记提取插件的集群也为可扩展集群。服务器10利用这些要素基于标准上报格式生成扩展字段,最终的扩展日志包括原始日志和扩展字段。对于每个扩展日志,都可以采用相同的方法查询要素。
如图2所示,服务器10对各原始日志通过流水线的方式进行处理,服务器10中维护一个队列,该队列可以采用内存无锁队列方案disruptor实现,也可以用例如redis等方式实现,在此不进行具体限定。
目标存储器30用于存储服务器10生成的扩展日志。此处的目标存储器30可以为elasticsearch集群、如mysql的关系数据库或nosql引擎等,在此不进行具体限定。
另外,服务器10还可以对目标存储器30中存储的具有统一格式的扩展字段的扩展日志进行操作审计,采用相同的方法查询各日志的关键信息,即扩展字段中的要素。
当然,如图3所示,日志处理系统包括可以包括终端50,用于向服务器10发送操作审计命令、展示操作审计结果等。终端50可以为如手机等移动终端或如PC(中文全称:个人计算机,英文全称:personal computer)端等固定终端,在此不进行具体限定。
本申请实施例公开了一种日志处理方法,对不同系统的原始日志进行格式化处理,进而提高了日志审计效率。
参见图4,本申请实施例提供的一种日志处理方法的流程图,如图4所示,包括:
S101:服务器利用日志源插件从日志源获取原始日志;
在本步骤中,服务器利用不同日志源插件从不同的日志源中读取原始日志。此处的原始日志可以包括互联网应用日志、即时通讯日志、数据块日志、攻击/扫描日志、文件传输日志、远程控制日志和邮件日志等,互联网应用日志可以包括HTTP(中文全称:超文本传输协议,英文全称:Hyper Text Transfer Protocol)应用日志、娱乐软件日志和基于C/S(中文全称:客户机/服务器,英文全称:Client/Server)架构的应用软件使用日志等。HTTP应用日志为监测访问互联网网页的内容信息、记录用户所设关键词信息、针对HTTPUP的信息和记录所有DNS(中文全称:域名系统,英文全称:Domain Name System)协议请求的日志,监测访问互联网网页的内容信息包括基于HTTP协议的发布和浏览。即时通讯日志为记录各类即时通讯软件使用信息以即虚拟身份信息的日志,数据库日志为记录各类数据块的操作和用户信息的日志,攻击/扫描日志为记录DDOS攻击(中文全称:分布式拒绝服务攻击,英文全称:Distributed denial of service attack)和端口扫描的行为日志,文件传输日志包括各类下载工具、FTP协议(中文全称:文件传输协议,英文全称:File TransferProtocol)、SMB(中文全称:服务器信息块,英文全称:Server Message Block)协议进行的文件传输信息,还包括即时聊天软件点对点传输文件的以及文件名的信息,远程控制日志为记录各类远程控制软件或协议的使用情况的日志,包括TELNET协议(中文全称:远程终端协议)、WINDOWS远程桌面和SSH(中文全称:安全外壳协议,英文全称:Secure Shell),邮件日志为记录SMTP协议(中文全称:简单邮件传输协议,英文全称:Simple Mail TransferProtocol)、POP3协议(中文全称:邮局协议版本3,英文全称:Post Office Protocol-Version3)、以及主流web邮件的日志,包括收件人、主题、抄送、正文、附件等。
服务器中包含多个日志源插件,每个日志源插件用于从一种日志源中获取原始日志,即服务器利用多个日志源插件从多个日志源中获取原始日志。具体的,本步骤可以包括:利用kafka源插件获取kafka队列中的原始日志;和/或,利用数据插件获取数据库中的原始日志;和/或,利用上报接口插件通过接口获取上报的原始日志。
在具体实施中,对于存放在kafka队列中的原始日志,可以通过kafka源插件将该原始日志读取到服务器中,对于存放在数据库中的原始日志,则可以通过数据插件从数据库中。服务器中还可以包含上报接口插件,可以利用该上报接口插件通过接口将原始日志上报到服务器中。
上述kafka源插件、数据插件和上报接口插件可以以集群的方式存储在服务器中,随着日志源种类的增加,该集群可扩展。
S102:服务器确定所述原始日志的日志类型;
在上述日志源插件中,原始日志将被打上基本的标签,例如,server表示该原始日志是由哪个系统产生的,service表示该原始日志是哪个服务接口产生的,这些标签可以通过原始日志的来源渠道或对原始日志进行简单的读取分析得到。服务器可以根据上述标签确定各原始日志的日志类型,此处的日志类型可以包括结构化类型、sql类型和文本类型等,在此不进行具体限定。
S103:服务器利用所述日志类型对应的标记提取插件提取所述原始日志的要素;
其中,所述要素包括标准要素和自定义要素,所述标准要素包括主体、客体、时间和操作类型;
服务器中包含多个标记提取插件,每个标记提取插件用于从其对应的日志类型的原始日志中提取要素,即服务器利用不同的标记提取插件提取不同日志类型的原始日志的要素。多个标记提取插件可以以集合的方式存储于服务其中,这个集合是可以扩展的。服务器可以提供一个映射表来指明不同日志类型的原始日志可以被哪一个标记提取插件处理,例如表1所示:
表1
可以理解的是,同一系统的不同服务接口产生的原始日志的日志类型可能不同,因此,对于同一系统的原始日志,可以同时采用多种标记提取插件进行要素提取。表1可以扩展为表2:
表2
server | service | 日志类型 | 标记提取插件 |
ServerA | Service1 | sql类型 | 标记提取插件B |
ServerA | Service2 | 结构化类型 | 标记提取插件A |
ServerB | Service3 | sql类型 | 标记提取插件B |
ServerC | Service4 | 文本类型 | 标记提取插件C |
具体的,本步骤可以包括:对所述原始日志进行结构化解析,从解析结果中提取所述原始日志的要素;和/或,通过druid库对所述原始日志中的sql语句进行解析,从解析结果中提取所述原始日志的要素;和/或,利用正则表达式提取所述原始日志的要素。
在具体实施中,若日志类型为json或者xml等结构化类型,可以通过对结构进行解析,进而获取原始日志的各要素;若日志类型为sql类型,即原始日志中包含sql语句,可以通过druid库对该sql语句进行解析,进而获取原始日志的各要素,若日志类型为文本类型,可以采用正则表达式方式获取原始日志的各要素。
需要说明的是,对于本步骤中的标记提取插件,本实施例不对其实现方式进行具体限定,例如,可以采用Java代码来实现,也可以通过python脚本等方式实现。
上述提取的原始日志的原始可以包括标准要素和自定义要素,标准要素即为操作审计四要素,包括主体、客体、时间和操作类型。从每条原始日志都可以提取这四个要素,这四个要素为每条原始日志定义了一个标准的故事/事件,即什么人(主体)在什么时间对什么客体做了什么类型的操作。主体表示操作的执行者,客体表示操作实际被作用的对象,例如:
(1)系统管理员查询了一个用户的信息。在该操作中,主体为系统管理员,客体为用户ID,操作类型为查询;
(2)系统管理员修改了一个基金的配置。在该操作中,主体为系统管理员,客体为基金的ID,操作类型为修改;
(3)一个员工登录了一台机器。在该操作中,主体为员工ID,客体为机器的IP地址,操作类型为登录;
需要说明的是,一条原始日志中的客体元素可以为多个、多种类型的。例如,一个员工分别在机器A、机器B和机器C上部署了服务S,那么客体包括机器A、机器B和机器C,还包括服务S,该操作中共有4个客体。
对于客体要素,可以从原始日志中记录的请求报文中的参数中提取。例如,对于原始日志“系统管理员通过用户ID查询用户信息”,可以从请求报文中的参数中提取该用户的ID作为客体。当然,也可以从原始日志中记录的响应报文中的参数中提取。例如,对于原始日志“系统管理员发起了一个范围查询”,响应报文返回了10个用户的信息列表,可以将响应报文中10各用户的ID作为客体。也就是说,本步骤可以包括:利用所述日志类型对应的标记提取插件根据所述原始日志中的请求报文和响应报文提取所述原始日志的客体。
上述提取的客体要素,参数类型至少包括客体类型(type)和客体名称(name)。例如,客体为用户ID,type为userId,name为zhangsan。需要说明的是,为了有利于跨多种日志类型的操作审计,对于同一种客体类型,命名需要进行统一规定。例如,对于系统A,用户ID的类型为userId,而在系统B中,用户ID的类型为user_account,在本实施例中,可以将其统一为userId。
当然,除了上述标准要素之外,在标记提取插件中可以提取其他业务关心的要素作为自定义要素。例如,对于一条记录配置在线活动的原始日志,可能额外关心所配置的金额,因此可以将金额作为自定义要素进行提取。当然,用户还可以设置其他自定义要素,在此不进行具体限定。
由于不同系统,甚至同一个系统中不同的操作,其日志格式均可能不同,因此对原始日志进行标准化的要素,可以为后续操作审计提供数据支持。例如,对于一个重要的用户,需要确定在所有的系统中,是否有人对他进行了操作。经过本步骤的客体要素提取,可以对异构的日志进行统一的标准查询得到结果。同理,对于主体和操作类型也有类似的意义,而时间要素可以了解操作的时间分别和还原操作顺序。
S104:服务器根据所述要素基于标准上报格式确定所述原始日志的扩展字段,以便得到所述原始日志对应的扩展日志;
在本步骤中,服务器将提取到的要素加入标准上报格式中,此处的标准上报格式例如:
可以理解的是,“user”为主体,“operation_type”为操作类型,“timestamp”为时间,“object”为客体。若上一步骤中提取的要素中还包括自定义要素,在标准上报格式中,可以为该自定义要素分配其他扩展字段。
在本步骤中,将上述基于标准上报格式的扩展字段加入原始日志的预设位置中,此处不对预设位置进行具体限定,可以为原始日志的头部或尾部等,均在本实施例的保护范围内。
由于在每个扩展日志中,存储各要素的格式相同,因此在后续操作审计的过程中,可以利用相同的提取插件,提取每个日志的扩展字段,进而以相同的方式获取每个日志的要素。
S105:服务器将所述扩展日志存储至目标存储器中,以便利用所述扩展日志进行操作审计。
服务器对各原始日志通过流水线的方式进行处理,即可以维护一个队列,对各原始日志进行要素提取得到扩展日志,可以将扩展日志重新放入队列中,进而将其存储至目标存储器中。优选的,还可以在该流水线上添加其他处理环节来对日志进行其他方面的加工处理,本领域技术人员可以根据实际情况灵活选择,均在本实施例的保护范围内,在此不进行限定。可以理解的是,目标存储器用于存储服务器生成的扩展日志,可以为elasticsearch集群、如mysql的关系数据库或nosql引擎等,在此不进行具体限定。
本申请实施例提供的日志处理方法,利用不同的标记提取插件对来源于不同系统的原始日志进行要素提取,并基于标准上报格式对这些要素进行存储,即生成扩展字段。由此可见,本申请实施例提供一种通用的日志处理方法,从各种系统收集到的、没有格式化的原始日志中,抽取统一的要素标记,使得原本完全不同的原始日志可以采用相同的方法查询关键信息,提高了日志审计效率。
本申请实施例公开了一种日志处理方法,相对于上一实施例,本实施例对技术方案作了进一步的说明和优化。本实施例将以服务器为执行主体进行介绍,具体的:
参见图5,本申请实施例提供的另一种日志处理方法的流程图,如图5所示,包括:
S201:利用kafka源插件获取kafka队列中的原始日志,利用数据插件获取数据库中的原始日志,利用上报接口插件通过接口获取上报的原始日志;
S202:对结构化类型的原始日志进行结构化解析,从解析结果中提取原始日志的要素;
S203:通过druid库对sql类型的原始日志中的sql语句进行解析,从解析结果中提取原始日志的要素;
S204:利用正则表达式提取文本类型的原始日志的要素;
可以理解的是,本实施例不对步骤S202、S203和S204的执行顺序进行限定,可以并行执行,也可以顺序执行,均在本实施例的保护范围内。
S205:根据所述要素基于标准上报格式确定每个原始日志的扩展字段,以便得到每个原始日志对应的扩展日志;
S206:将所述扩展日志存储至elasticsearch集群中,以便利用所述扩展日志进行操作审计。
由于不同系统,甚至同一个系统中不同的操作,其日志格式均可能不同,因此在本实施例中,利用kafka源插件获取kafka队列中的原始日志,利用数据插件获取数据库中的原始日志,利用上报接口插件通过接口获取上报的原始日志,并利用不同的提取方式对来源于不同系统的原始日志进行要素提取,可以为后续操作审计提供数据支持。
为了便于理解,结合本申请的一种应用场景进行介绍。结合图2和图3,日志源20包括kafka队列和数据库,服务器10中包含kafka源插件和数据插件,可以利用kafka源插件获取kafka队列中的原始日志组成原始日志集A,利用数据插件获取数据库中的原始日志组成原始日志集B。
对于原始日志集A中的原始日志采用标记提取插件A提取四要素,即主体、客体、操作类型和时间,对于原始日志集B中的原始日志采用标记提取插件B提取四要素。标记提取插件A的执行流程为对原始日志进行结构化解析,从解析结果中提取四要素,标记提取插件B的执行流程为通过druid库对原始日志中的sql语句进行解析,从解析结果中提取四要素。根据每个原始日志的四要素基于标准上报格式确定扩展字段,得到每个原始日志对应的扩展日志,并将其存储至目标存储器30中。
用户可以在终端50中输入关注的目标客体,服务器10可以对目标存储器30中存储的所有扩展日志进行客体字段的匹配,得到对该目标客体进行的所有操作,并在终端50中以图表的形式进行展示。
下面对本申请实施例提供的一种日志处理装置进行介绍,下文描述的一种日志处理装置与上文描述的一种日志处理方法可以相互参照。
参见图6,本申请实施例提供的一种日志处理装置的结构图,如图6所示,包括:
获取模块601,用于利用日志源插件获取原始日志,并确定所述原始日志的日志类型;
提取模块602,用于利用所述日志类型对应的标记提取插件提取所述原始日志的要素;其中,所述要素包括标准要素和自定义要素,所述标准要素包括主体、客体、时间和操作类型;
确定模块603,用于根据所述要素基于标准上报格式确定所述原始日志的扩展字段,以便得到所述原始日志对应的扩展日志;
存储模块604,用于将所述扩展日志存储至目标存储器中。
本申请实施例提供的日志处理装置,利用不同的标记提取插件对来源于不同系统的原始日志进行要素提取,并基于标准上报格式对这些要素进行存储,即生成扩展字段。由此可见,本申请实施例提供一种通用的日志处理装置,从各种系统收集到的、没有格式化的原始日志中,抽取统一的要素标记,使得原本完全不同的原始日志可以采用相同的方法查询关键信息,提高了日志审计效率。
在上述实施例的基础上,作为一种优选实施方式,所述获取模块601包括:
获取单元,用于,利用kafka源插件获取kafka队列中的原始日志,和/或,利用数据插件获取数据库中的原始日志,和/或,利用上报接口插件通过接口获取上报的原始日志;
确定单元,用于用于确定所述原始日志的日志类型;
在上述实施例的基础上,作为一种优选实施方式,所述日志类型包括结构化类型、sql类型和文本类型。
在上述实施例的基础上,作为一种优选实施方式,所述提取模块602包括:
客体提取单元,用于利用所述日志类型对应的标记提取插件根据所述原始日志中的请求报文和响应报文提取所述原始日志的客体。
在上述实施例的基础上,作为一种优选实施方式,所述客体的参数类型至少包括客体类型和客体名称。
在上述实施例的基础上,作为一种优选实施方式,所述目标存储器包括elasticsearch集群或目标数据库。
在上述实施例的基础上,作为一种优选实施方式,所述提取模块602包括第一提取单元,和/或第二提取单元,和/或第三提取单元;
所述第一提取单元,用于对所述原始日志进行结构化解析,从解析结果中提取所述原始日志的要素;
所述第二提取单元,用于通过druid库对所述原始日志中的sql语句进行解析,从解析结果中提取所述原始日志的要素;
所述第三提取单元,用于利用正则表达式提取所述原始日志的要素。
关于上述实施例中的装置,其中各个模块执行操作的具体方式已经在有关该方法的实施例中进行了详细描述,此处将不做详细阐述说明。
本申请还提供了一种服务器,参见图7,本申请实施例提供的一种服务器60的结构图,如图7所示,可以包括处理器61和存储器62。
其中,处理器61可以包括一个或多个处理核心,比如4核心处理器、8核心处理器等。处理器61可以采用DSP(Digital Signal Processing,数字信号处理)、FPGA(Field-Programmable Gate Array,现场可编程门阵列)、PLA(Programmable Logic Array,可编程逻辑阵列)中的至少一种硬件形式来实现。处理器61也可以包括主处理器和协处理器,主处理器是用于对在唤醒状态下的数据进行处理的处理器,也称CPU(Central ProcessingUnit,中央处理器);协处理器是用于对在待机状态下的数据进行处理的低功耗处理器。在一些实施例中,处理器61可以在集成有GPU(Graphics Processing Unit,图像处理器),GPU用于负责显示屏所需要显示的内容的渲染和绘制。一些实施例中,处理器61还可以包括AI(Artificial Intelligence,人工智能)处理器,该AI处理器用于处理有关机器学习的计算操作。
存储器62可以包括一个或多个计算机可读存储介质,该计算机可读存储介质可以是非暂态的。存储器62还可包括高速随机存取存储器,以及非易失性存储器,比如一个或多个磁盘存储设备、闪存存储设备。本实施例中,存储器62至少用于存储以下计算机程序621,其中,该计算机程序被处理器61加载并执行之后,能够实现前述任一实施例公开的由终端侧执行的测试监管方法中的相关步骤。另外,存储器62所存储的资源还可以包括操作系统622和数据623等,存储方式可以是短暂存储或者永久存储。其中,操作系统622可以包括Windows、Unix、Linux等。
在一些实施例中,服务器60还可包括有显示屏63、输入输出接口64、通信接口65、传感器66、电源67以及通信总线68。
当然,图7所示的服务器的结构并不构成对本申请实施例中服务器的限定,在实际应用中服务器可以包括比图7所示的更多或更少的部件,或者组合某些部件。
在另一示例性实施例中,还提供了一种包括程序指令的计算机可读存储介质,该程序指令被处理器执行时实现上述任一实施例服务器所执行的日志处理方法的步骤。
说明书中各个实施例采用递进的方式描述,每个实施例重点说明的都是与其他实施例的不同之处,各个实施例之间相同相似部分互相参见即可。对于实施例公开的装置而言,由于其与实施例公开的方法相对应,所以描述的比较简单,相关之处参见方法部分说明即可。应当指出,对于本技术领域的普通技术人员来说,在不脱离本申请原理的前提下,还可以对本申请进行若干改进和修饰,这些改进和修饰也落入本申请权利要求的保护范围内。
还需要说明的是,在本说明书中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。
Claims (10)
1.一种日志处理方法,其特征在于,包括:
利用日志源插件获取原始日志,并确定所述原始日志的日志类型;
利用所述日志类型对应的标记提取插件提取所述原始日志的要素;其中,所述要素包括标准要素和自定义要素,所述标准要素包括主体、客体、时间和操作类型;
根据所述要素基于标准上报格式确定所述原始日志的扩展字段,以便得到所述原始日志对应的扩展日志;
将所述扩展日志存储至目标存储器中,以便利用所述扩展日志进行操作审计。
2.根据权利要求1所述日志处理方法,其特征在于,所述利用日志源插件获取原始日志,包括:
利用kafka源插件获取kafka队列中的原始日志;
和/或,利用数据插件获取数据库中的原始日志;
和/或,利用上报接口插件通过接口获取上报的原始日志。
3.根据权利要求1所述日志处理方法,其特征在于,所述日志类型包括结构化类型、sql类型和文本类型。
4.根据权利要求1所述日志处理方法,其特征在于,所述利用所述日志类型对应的标记提取插件提取所述原始日志的要素,包括:
利用所述日志类型对应的标记提取插件根据所述原始日志中的请求报文和响应报文提取所述原始日志的客体。
5.根据权利要求1所述日志处理方法,其特征在于,所述客体的参数类型至少包括客体类型和客体名称。
6.根据权利要求1所述日志处理方法,其特征在于,所述目标存储器包括elasticsearch集群或目标数据库。
7.根据权利要求1至6中任一项所述日志处理方法,其特征在于,所述利用所述日志类型对应的标记提取插件提取所述原始日志的要素,包括:
对所述原始日志进行结构化解析,从解析结果中提取所述原始日志的要素;
和/或,通过druid库对所述原始日志中的sql语句进行解析,从解析结果中提取所述原始日志的要素;
和/或,利用正则表达式提取所述原始日志的要素。
8.一种日志处理装置,其特征在于,包括:
获取模块,用于利用日志源插件获取原始日志,并确定所述原始日志的日志类型;
提取模块,用于利用所述日志类型对应的标记提取插件提取所述原始日志的要素;其中,所述要素包括标准要素和自定义要素,所述标准要素包括主体、客体、时间和操作类型;
确定模块,用于根据所述要素基于标准上报格式确定所述原始日志的扩展字段,以便得到所述原始日志对应的扩展日志;
存储模块,用于将所述扩展日志存储至目标存储器中。
9.一种服务器,其特征在于,包括:
处理器和存储器;
其中,所述处理器用于执行所述存储器中存储的程序;
所述存储器用于存储程序,所述程序至少用于:
利用日志源插件获取原始日志,并确定所述原始日志的日志类型;
利用所述日志类型对应的标记提取插件提取所述原始日志的要素;其中,所述要素包括标准要素和自定义要素,所述标准要素包括主体、客体、时间和操作类型;
根据所述要素基于标准上报格式确定所述原始日志的扩展字段,以便得到所述原始日志对应的扩展日志;
将所述扩展日志存储至目标存储器中,以便利用所述扩展日志进行操作审计。
10.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质上存储有计算机程序,所述计算机程序被处理器执行时实现如权利要求1至7任一项所述日志处理方法的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910731271.7A CN112347165B (zh) | 2019-08-08 | 2019-08-08 | 日志处理方法、装置及服务器和计算机可读存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910731271.7A CN112347165B (zh) | 2019-08-08 | 2019-08-08 | 日志处理方法、装置及服务器和计算机可读存储介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN112347165A true CN112347165A (zh) | 2021-02-09 |
CN112347165B CN112347165B (zh) | 2023-11-03 |
Family
ID=74366828
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201910731271.7A Active CN112347165B (zh) | 2019-08-08 | 2019-08-08 | 日志处理方法、装置及服务器和计算机可读存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN112347165B (zh) |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113315792A (zh) * | 2021-07-30 | 2021-08-27 | 深圳市永达电子信息股份有限公司 | 网络数据的客体抽取方法、装置、电子设备及存储介质 |
CN113407505A (zh) * | 2021-07-01 | 2021-09-17 | 中孚安全技术有限公司 | 一种安全日志要素处理方法及系统 |
CN113656368A (zh) * | 2021-07-29 | 2021-11-16 | 济南浪潮数据技术有限公司 | 一种云平台日志处理方法及系统 |
CN113849386A (zh) * | 2021-09-26 | 2021-12-28 | 北京天融信网络安全技术有限公司 | 一种日志数据生成方法、装置、存储介质及电子设备 |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5892917A (en) * | 1995-09-27 | 1999-04-06 | Microsoft Corporation | System for log record and log expansion with inserted log records representing object request for specified object corresponding to cached object copies |
CN107818150A (zh) * | 2017-10-23 | 2018-03-20 | 中国移动通信集团广东有限公司 | 一种日志审计方法及装置 |
CN109325009A (zh) * | 2018-09-19 | 2019-02-12 | 亚信科技(成都)有限公司 | 日志解析的方法及装置 |
CN109408479A (zh) * | 2018-09-19 | 2019-03-01 | 平安科技(深圳)有限公司 | 日志数据添加方法、系统、计算机设备和存储介质 |
-
2019
- 2019-08-08 CN CN201910731271.7A patent/CN112347165B/zh active Active
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5892917A (en) * | 1995-09-27 | 1999-04-06 | Microsoft Corporation | System for log record and log expansion with inserted log records representing object request for specified object corresponding to cached object copies |
CN107818150A (zh) * | 2017-10-23 | 2018-03-20 | 中国移动通信集团广东有限公司 | 一种日志审计方法及装置 |
CN109325009A (zh) * | 2018-09-19 | 2019-02-12 | 亚信科技(成都)有限公司 | 日志解析的方法及装置 |
CN109408479A (zh) * | 2018-09-19 | 2019-03-01 | 平安科技(深圳)有限公司 | 日志数据添加方法、系统、计算机设备和存储介质 |
Cited By (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113407505A (zh) * | 2021-07-01 | 2021-09-17 | 中孚安全技术有限公司 | 一种安全日志要素处理方法及系统 |
CN113656368A (zh) * | 2021-07-29 | 2021-11-16 | 济南浪潮数据技术有限公司 | 一种云平台日志处理方法及系统 |
CN113315792A (zh) * | 2021-07-30 | 2021-08-27 | 深圳市永达电子信息股份有限公司 | 网络数据的客体抽取方法、装置、电子设备及存储介质 |
CN113315792B (zh) * | 2021-07-30 | 2021-11-30 | 深圳市永达电子信息股份有限公司 | 网络数据的客体抽取方法、装置、电子设备及存储介质 |
CN113849386A (zh) * | 2021-09-26 | 2021-12-28 | 北京天融信网络安全技术有限公司 | 一种日志数据生成方法、装置、存储介质及电子设备 |
Also Published As
Publication number | Publication date |
---|---|
CN112347165B (zh) | 2023-11-03 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN111522922B (zh) | 日志信息查询方法、装置、存储介质及计算机设备 | |
CN112347165B (zh) | 日志处理方法、装置及服务器和计算机可读存储介质 | |
CN108920659B (zh) | 数据处理系统及其数据处理方法、计算机可读存储介质 | |
CN112636957B (zh) | 基于日志的预警方法、装置、服务器及存储介质 | |
CN111866016B (zh) | 日志的分析方法及系统 | |
CN113987074A (zh) | 分布式服务全链路监控方法、装置、电子设备及存储介质 | |
CN108228875B (zh) | 基于完美哈希的日志解析方法及装置 | |
CN111241104A (zh) | 操作审计方法、装置及电子设备和计算机可读存储介质 | |
RU2701040C1 (ru) | Способ и вычислительное устройство для информирования о вредоносных веб-ресурсах | |
US20200042424A1 (en) | Method, apparatus and system for processing log data | |
JPWO2015141665A1 (ja) | ウェブサイト情報抽出装置、システム、ウェブサイト情報抽出方法、および、ウェブサイト情報抽出プログラム | |
WO2016007178A1 (en) | System and method for providing contextual analytics data | |
CN112956157A (zh) | 追踪客户端设备事件的系统和方法 | |
CN112084249A (zh) | 一种访问记录提取方法及装置 | |
CN113449339A (zh) | 日志收集方法、系统、计算机设备及计算机可读存储介质 | |
CN114971714A (zh) | 一种基于大数据标签的精准客户运营方法和计算机设备 | |
CN112347066B (zh) | 日志处理方法、装置及服务器和计算机可读存储介质 | |
CN113641742A (zh) | 一种数据抽取方法、装置、设备和存储介质 | |
CN113312321A (zh) | 一种业务量的异常监测方法及相关设备 | |
CN112463533A (zh) | 日志数据解析方法、装置、电子装置和存储介质 | |
Gregorio et al. | Forensic analysis of Telegram messenger desktop on macOS | |
CN110881030A (zh) | 基于logstash的记录web服务管理员操作日志的方法及装置 | |
CN111865696B (zh) | 网络安全的可视化方法、装置、设备及介质 | |
US10664501B2 (en) | Deriving and interpreting users collective data asset use across analytic software systems | |
CN112346938A (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 |