本申请涉及计算机技术领域,尤其涉及一种日志查询方法、装置及存储介质。
背景技术:
日志文件包括内核系统日志、用户日志和程序日志,日志记录了用户操作信息和程序运行过程中的各种事件信息等多种信息,随着互联网技术的发展,日志在系统监控、查询和安全审计等方面发挥着越来越重要的作用。目前,日志查询的方法是服务器根据时间顺序逐一对大量的日志中的每一条日志进行查询,无法便捷查询目标日志内容,该方法查询速度慢,效率低,急需一种能够有效查询日志的方法。
技术实现要素:
鉴于上述问题,提出了本申请以便提供一种克服上述问题或者至少部分地解决上述问题的一种日志查询方法、装置及存储介质。
第一方面,本申请实施例提供了一种日志查询方法,可包括:
接收查询指令,所述查询指令包括日志路径、输入时间以及输入关键词;
对所述日志路径下的日志进行划分,得到多个日志块,所述日志路径下的日志按照时间戳的先后排序,所述多个日志块中每个日志块包括一个时间段内的日志;
在目标日志块查找满足查询条件的日志,得到目标日志,所述目标日志块为所述多个日志块中与所述输入时间包含重叠时间的时间段对应的日志块,所述查询条件是基于所述输入关键词生成的;
输出所述目标日志。
在一种可能实现的方式中,所述输入时间包括所述输入时间的起始时间和结束时间,所述在目标日志块查找满足所述查询条件的日志,得到目标日志,包括:
执行n次查询过程,i为不大于n的正整数,n为正整数,第i次查询过程包括:
在第i个目标日志块查找满足所述查询条件的日志,得到第i个日志集合,所述目标日志包括所述日志集合;
在所述目标日志块包括第i+1个目标日志块时,执行下一次查询过程;
其中,第1个目标日志块为所述起始时间所在的日志块,所述第i+1个目标日志块为在所述第i个目标日志块的时间之后距离所述第i个目标日志块时间最近的日志块。
在一种可能实现的方式中,所述第1个查询过程还包括:
将所述多个日志块的中间位置的日志的时间戳确定为待确定时间;
判断所述起始时间与待确定时间的大小关系;
若所述待确定时间等于起始时间,则将待确定时间所在日志块确定为所述第1个目标日志块,
若所述待确定时间小于起始时间,则将所述起始时间所在日志块到所述多个日志块的最后一个日志块之间的中间位置的日志的时间戳确定为待确定时间,继续执行判断所述起始时间与待确定时间的大小关系,直至所述待确定时间等于起始时间;
若所述待确定时间大于起始时间,则将所述多个日志块的第一个日志块与所述起始时间所在日志块之间的中间位置的日志的时间戳确定为待确定时间,继续执行判断所述起始时间与待确定时间的大小关系,直至所述待确定时间等于起始时间。
在一种可能实现的方式中,所述在第i个目标日志块查找满足所述查询条件的日志包括:
根据内存映射函数对所述第i个目标日志块进行处理,得到第i个映射日志块,所述第i个映射日志块与所述第i个目标日志块存在映射关系;
在所述第i个映射日志块查找满足所述查询条件的日志,得到所述第i个日志集合。
在一种可能实现的方式中,所述日志块包括多条日志,所述多条日志的每一条日志包括时间戳,所述第i次查询过程还包括:
若所述结束时间在所述第i+1个目标日志块中第1条日志的时间戳之后,所述目标日志块包括所述第i+1个目标日志块。
在一种可能实现的方式中,所述查询指令还包括查询模式,所述查询条件由所述查询模式和所述输入关键词确定。
在一种可能实现的方式中,当所述查询模式为模糊查询时,所述满足查询条件的日志是所述目标日志块中包括所述输入关键词的日志。
通过第一方面的方法,本申请实施例可以首先接收查询指令,查询指令包括日志路径、输入时间以及输入关键词,在对日志路径下的日志进行划分,得到多个日志块,日志路径下的日志按照时间戳的先后排序,多个日志块中每个日志块包括一个时间段内的日志,进而,在目标日志块查找满足查询条件的日志,得到目标日志,目标日志块为多个日志块中与输入时间包含重叠时间的时间段对应的日志块,查询条件是基于输入关键词生成的,最后,输出目标日志。本申请实施例本申请实施例可以通过在目标日志块查找满足查询条件的日志,避免了对大量日志的处理,提高了日志查询的效率。
第二方面,本申请实施例提供了一种日志查询装置,
接收单元,用于接收查询指令,所述查询指令包括日志路径、输入时间以及输入关键词;
划分单元,用于对所述日志路径下的日志进行划分,得到多个日志块,所述日志路径下的日志按照时间戳的先后排序,所述多个日志块中每个日志块包括一个时间段内的日志;
查询单元,用于在目标日志块查找满足查询条件的日志,得到目标日志,所述目标日志块为所述多个日志块中与所述输入时间包含重叠时间的时间段对应的日志块,所述查询条件是基于所述输入关键词生成的;
输出单元,用于输出所述目标日志。
第三方面,本申请实施例提供了一种日志查询装置,包括存储组件,处理组件和通信组件,存储组件,处理组件和通信组件相互连接,其中,存储组件用于存储计算机程序,通信组件用于与外部设备进行信息交互;处理组件被配置用于调用计算机程序,执行第一方面所述的方法,此处不再赘述
第四方面,本申请实施例提供了一种计算机可读存储介质,其特征在于,所述计算机可读存储介质存储有计算机程序,所述计算机程序被处理器执行以实现上述第一方面的方法。
附图说明
为了更清楚地说明本申请实施例或背景技术中的技术方案,下面将对本申请实施例或背景技术中所需要使用的附图进行说明。
图1是本申请实施例提供的一种日志查询系统架构示意图;
图2是本申请实施例提供的一种日志查询方法流程的示意图;
图3是本申请实施例提供的一种日志查询装置的结构示意图;
图4是本申请实施例提供的另一种日志查询装置的结构示意图。
具体实施方式
下面将结合本申请实施例中的附图,对本申请实施例进行描述。
本申请的说明书和权利要求书及所述附图中的术语“第一”、“第二”和“第三”等是用于区别不同对象,而不是用于描述特定顺序。此外,“包括”和“具有”以及它们任何变形,意图在于覆盖不排他的包含。例如包含了一系列步骤或单元的过程、方法、系统、产品或设备没有限定于已列出的步骤或单元,而是可选地还包括没有列出的步骤或单元,或可选地还包括对于这些过程、方法、产品或设备固有的其它步骤或单元。
在本文中提及“实施例”意味着,结合实施例描述的特定特征、结构或特性可以包含在本申请的至少一个实施例中。在说明书中的各个位置出现该短语并不一定均是指相同的实施例,也不是与其它实施例互斥的独立的或备选的实施例。本领域技术人员显式地和隐式地理解的是,本文所描述的实施例可以与其它实施例相结合。
在本申请中使用的术语“服务器”、“单元”、“系统”等用于表示计算机相关的实体、硬件、固件、硬件和软件的组合、软件、或执行中的软件。例如,服务器可以是但不限于,处理器,数据处理平台,计算设备,计算机,两个或更多个计算机等。
首先,对本申请实施例所基于的其中一种日志查询系统架构进行描述。请参考附图1,图1是本申请实施例提供的一种日志查询系统架构示意图,包括:日志查询装置101和用户设备102。其中:
日志查询装置101可以包括但不限于后台服务器、组件服务器、数据处理服务器等,当上述日志查询装置101为服务器时,所述服务器可以通过互联网与用户设备进行通信,服务器上也需要运行有相应的服务器端程序来提供相应的日志查询服务,如数据库服务、数据计算、决策执行等等。例如,服务器可以接收查询指令,查询指令包括日志路径、输入时间以及输入关键词;对日志路径下的日志进行划分,得到多个日志块,日志路径下的日志按照时间戳的先后排序,多个日志块中每个日志块包括一个时间段内的日志;在目标日志块查找满足查询条件的日志,得到目标日志,目标日志块为多个日志块中与输入时间包含重叠时间的时间段对应的日志块,查询条件是基于输入关键词生成的;输出目标日志。
用户设备102可以安装并运行相关的应用。应用是指与服务器相对应,为客户提供本地服务的程序。这里,该本地服务可包括但不限于:获取查询指令,向日志查询装置101发送查询指令,以使日志查询装置101服务器可以接收查询指令以进行日志查询。本方案实施例中的用户设备可以包括但不限于任何一种基于智能操作系统的电子产品,其可与用户通过键盘、虚拟键盘、触摸板、触摸屏以及声控设备等输入设备来进行人机交互,诸如智能手机、平板电脑、个人电脑等。其中,智能操作系统包括但不限于任何通过向移动设备提供各种移动应用来丰富设备功能的操作系统,诸如:安卓(androidtm)、iostm、windowsphonetm等。
还可以理解的是,图1的日志查询系统架构只是本申请实施例中的部分示例性的实施方式。
在另一种情况下,系统架构也可以是一个日志查询装置101,这个日志查询装置101可以为本地的一个终端,该终端可以安装并运行相关的应用。应用是指与服务器相对应,为客户提供本地服务的程序。例如,该终端可以接收查询指令,查询指令包括日志路径、输入时间以及输入关键词;对日志路径下的日志进行划分,得到多个日志块,日志路径下的日志按照时间戳的先后排序,多个日志块中每个日志块包括一个时间段内的日志;在目标日志块查找满足查询条件的日志,得到目标日志。本方案实施例中的终端可以包括但不限于任何一种基于智能操作系统的电子产品,其可与用户通过键盘、虚拟键盘、触摸板、触摸屏以及声控设备等输入设备来进行人机交互,诸如智能手机、平板电脑、个人电脑等。其中,智能操作系统包括但不限于任何通过向移动设备提供各种移动应用来丰富设备功能的操作系统,诸如安卓(androidtm)、iostm、windowsphonetm等。
本申请实施例中的日志查询系统架构包括但不仅限于以上日志查询系统架构。
参考附图2,图2是本申请实施例提供的一种日志查询方法流程的示意图。可应用于上述图1中的系统,下面将结合图2从日志查询装置101的单侧进行描述。该方法可以包括以下步骤s201-步骤s204。
步骤s201,接收查询指令,该查询指令包括日志路径、输入时间以及输入关键词。
日志查询装置接收查询指令,该查询指令包括日志路径、输入时间以及查询条件。其中,输入时间包括该输入时间的起始时间和结束时间,例如,输入时间可以为一个时间段9:00~10:00,其中,该输入时间的起始时间为9:00,结束时间为10:00。
其中,日志查询装置可以提供一个修改配置的接口以实现日志查询装置的初始化。具体的,日志查询装置在接收到查询指令之后,先调用修改配置的接口,对日志查询装置的配置参数进行修改,例如,对日志查询装置所设置的日志路径进行修改,增加或减少日志内容。需要说明的是,由于调用了该接口,不需要工作人员手动更改配置文件,并且不需要重启日志查询装置就能生效配置。
步骤s202,对该日志路径下的日志进行划分,得到多个日志块。
具体的,日志查询装置先获取该日志路径下的日志,其中,日志路径下的每一条日志是按照时间戳的先后排序的,再对该日志路径下的日志进行划分,得到多个日志块,其中,每个日志块包括一个时间段内的日志。
其中,日志路径下的日志可以包括多条日志,每一条日志对应一个时间戳,可以理解的是,每一条日志的时间戳为一个时间值,用以表示该条日志生成的时间,日志是按照生成日志的先后次序存储的,也即是日志路径下的每一条日志是按照时间戳的先后排序的。需要说明的是,日志查询装置是在不改变日志排序的情况下,根据预先设定的划分规则对该日志路径下的日志进行划分,得到多个日志块的。具体的,可以根据预先设定的划分规则将该日志路径下的日志划分为大小相等的日志块,例如,将原始日志划分为大小为128兆的日志块。可以理解的是,在划分过程中,日志查询装置不改变日志排序,生成的多个日志块按照时间先后排序,每一个日志块中的多条日志是按照时间戳的先后次序排序的。
步骤s203,在目标日志块查找满足查询条件的日志,得到目标日志,该目标日志块为多个日志块中与输入时间包含重叠时间的时间段对应的日志块,该查询条件是基于输入关键词生成的。
具体的,日志查询装置执行一次或多次查询过程,得到目标日志,其中,若多个日志块中与输入时间包含重叠时间的时间段对应的日志块只有一个,即只有一个目标日志块时,则日志查询装置只执行一次查询过程,目标日志为第一次查询过程得到的第一个日志集合,若多个日志块中存在多于一个的与输入时间包含重叠时间的时间段对应的日志块,即存在多个目标日志块时,则日志查询装置执行多次查询过程,目标日志包括多次查询过程得到的每一个日志集合。
在一种实现中,若日志查询装置读取日志的顺序为根据时间戳顺序读取,第一个查询过程将起始时间所在的日志块确定为第一个目标日志块,具体的,日志查询装置执行n次查询过程,i为不大于n的正整数,n为正整数,第i次查询过程包括:在第i个目标日志块查找满足查询条件的日志,得到第i个日志集合,目标日志包括日志集合;在目标日志块包括第i+1个目标日志块时,执行下一次查询过程;其中,第1个目标日志块为起始时间所在的日志块,第i+1个目标日志块为在第i个目标日志块的时间之后距离第i个目标日志块时间最近的日志块。
其中,第一个查询过程可以根据二分法确定第一个目标日志块,进而,在第一个目标日志块查找满足查询条件的日志,得到第一个日志集合。在日志查询装置执行第一个查询过程结束时,再确定是否存在下一个目标日志块,是否继续下一个查询过程。需要说明的是,若日志查询装置读取日志的顺序为根据时间戳逆序读取,则将结束时间所在的日志块确定为第一个目标日志块,此处不再赘述。
具体的,若日志查询装置在对第一个目标日志块进行查询的过程中,读取到时间戳为大于结束时间的日志时,例如,结束时间为10:00,当日志查询到时间戳为10:01的日志时,结束日志查询。可以理解的是,此时与输入时间包含重叠时间的时间段对应的日志存在于第一个目标日志块中,则只有一个目标日志块。
若日志查询装置对第一个目标日志块查询结束时,仍未读取到大于结束时间的日志,则继续根据时间戳的顺序对下一个目标日志块进行读取,直至读取至到时间戳为大于结束时间的日志时,结束日志查询。可以理解的是,在日志块划分时,日志块的排序时按照时间戳的顺序排序的,因此,第一个目标日志块的下一个日志块为距离该目标日志块时间最近的日志块。需要说明的是,若日志查询装置读取日志的顺序为根据时间戳逆序读取,则第一个目标日志块的上一个日志块为距离该目标日志块时间最近的日志块。可以理解的是,包括时间戳等于结束时间的日志的日志块为最后一个目标日志块,即结束时间在日志块中第1条日志的时间戳之后,则该日志块为目标日志块。可以理解的是,与输入时间包含重叠时间的时间段对应的日志块为第一个目标日志块到最后一个目标日志块之间的日志块。
其中,日志查询装置根据起始时间或结束时间确定第一个目标日志块,具体的,可以查询多个日志块中的第一个日志块的第一个时间戳t0和最后一块日志块的最后一个时间戳t1,t0为起始时间或结束时间。日志查询装置先通过判断t0、t1和t0的大小关系,确定该日志路径下的日志中是否存在所要查询的日志,当确定多个日志块中存在与输入时间包含重叠时间的时间段对应的日志块时,再通过二分法确定第一个目标日志块。
(1)若t0大于t1,则日志查询装置要查询日志的时间不在t0~t1之间,则日志查询装置可以指示不存在所要查询的日志;
(2)若t0小于t1,则日志查询装置要查询日志的时间在t0~t1之间,则日志查询装置可以通过二分法来查找目标日志块。
具体的,日志查询装置可以查询(t0+t1)/2所在位置的时间,判断(t0+t1)/2所在位置的时间与t0的大小关系,其中,若(t0+t1)/2所在位置的时间等于t0,则该位置为目标位置,该目标位置所在日志块为目标日志块,若该位置的时间大于t0,则该目标位置位于t0~(t0+t1)/2的位置之间,将(t0+t1)/2确定为t1,继续执行查询(t0+t1)/2所在位置的时间,判断(t0+t1)/2所在位置的时间与t0的大小关系,若该位置的时间小于t0,则该目标位置位于(t0+t1)/2~t1的位置之间,将(t0+t1)/2确定为t0,继续执行查询(t0+t1)/2所在位置的时间,判断(t0+t1)/2所在位置的时间与t0的大小关系,直至(t0+t1)/2所在位置的时间等于t0。可以理解的是,通过二分法定位日志块之后,只需要打开这个日志块读取内容进行查询,大大减少了日志查询的时间,提高了日志查询的效率。
例如,根据二分法确定起始时间所在的日志块的步骤可以包括以下部分或全部步骤:
将多个日志块的中间位置的时间戳确定为待确定时间;判断起始时间与待确定时间的大小关系;若待确定时间等于起始时间,则将待确定时间所在日志块确定为所述第1个目标日志块;若待确定时间小于起始时间,则将起始时间所在日志块到多个日志块的最后一个日志块之间的中间位置的时间戳确定为待确定时间,继续执行判断起始时间与待确定时间的大小关系,直至待确定时间等于起始时间;若待确定时间大于起始时间,则将多个日志块的第一个日志块与起始时间所在日志块之间的中间位置的时间戳确定为待确定时间,继续执行判断起始时间与待确定时间的大小关系,直至待确定时间等于起始时间。
其中,日志查询装置在目标日志块查找满足查询条件的日志,具体的,日志查询装置可以在确定一个目标日志块时,根据内存映射(mmap)函数对该目标日志块进行处理,得到映射日志块,进而,在映射日志块中查找满足查询条件的日志,得到一个日志集合。
具体的,日志查询装置先创建虚拟映射区域,再创建目标日志块与虚拟映射区域的映射关系。具体的,日志查询装置根据库函数确定虚拟地址区域,再将虚拟地址区域进行结构化,得到结构化后的虚拟地址区域,对结构化的虚拟地址区域初始化,得到虚拟映射区域,进而,创建原始日志与虚拟映射区域的映射关系,也即是将目标日志块映射到虚拟映射区域中,得到映射日志。可以理解的是,由于建立了物理磁盘中的目标日志块与虚拟映射区域中的映射日志块存在映射关系,不需要将物理磁盘中的日志文件拷贝到内存中,可以直接对虚拟映射区域中的映射日志块进行查询,即可实现对物理磁盘中的日志文件的查询,提高了查询日志的效率。
其中,查询指令还包括查询模式,查询条件由查询模式和输入关键词所确定,当查询模式为模糊查询时,满足查询条件的日志是目标日志块中包括输入关键词的日志。具体的,日志查询装置可以先解析输入关键字,将输入关键字转换成逻辑语言,再根据原先系统规则,模仿范围搜索(luncene)表达式进行查询。
在一种实现中,日志查询装置可以先将日志拆分为字段(title):内容(content)的格式,再根据查询模式进行查询,其中,查询模式可以包括aandb、a>1、a:1模式,其中,a和b表示输入关键字。例如,a>1模式即为模糊查询模式,具体的,a可以带字段,也可以不带字段,其中,“>”表示的是字符的相似关系,相似程度跟数值有关,相似程度可以用模糊系数[0-1]来表示,例如,test~0.5可以搜索出text或者tests等词。
步骤s204,输出目标日志。
具体的,日志查询装置可以在步骤s204中的每一次查询过程结束时输出一个日志集合,也可以在步骤s204执行结束后,将所有的日志集合输出显示,所有的日志集合即为目标日志。
本申请实施例可以接收查询指令,查询指令包括日志路径、输入时间以及输入关键词;对日志路径下的日志进行划分,得到多个日志块,日志路径下的日志按照时间戳的先后排序,多个日志块中每个日志块包括一个时间段内的日志;在目标日志块查找满足查询条件的日志,得到目标日志,目标日志块为多个日志块中与输入时间包含重叠时间的时间段对应的日志块,查询条件是基于输入关键词生成的;输出目标日志。本申请实施例可以通过在目标日志块查找满足查询条件的日志,避免了对大量日志的处理,提高了日志查询的效率。
上述详细阐述了本申请实施例的方法,下面提供了与本申请实施例的相关日志查询装置。请参考附图3,图3是本申请实施例提供的一种日志查询装置的结构示意图。日志查询装置10可以包括接收单元301,划分单元302,查询单元303和输出单元304。
接收单元301,用于接收查询指令,所述查询指令包括日志路径、输入时间以及输入关键词;
划分单元302,用于对所述日志路径下的日志进行划分,得到多个日志块,所述日志路径下的日志按照时间戳的先后排序,所述多个日志块中每个日志块包括一个时间段内的日志;
查询单元303,用于在目标日志块查找满足查询条件的日志,得到目标日志,所述目标日志块为所述多个日志块中与所述输入时间包含重叠时间的时间段对应的日志块,所述查询条件是基于所述输入关键词生成的;
输出单元304,用于输出所述目标日志。
在一种可能实现的方式中,所述输入时间包括所述输入时间的起始时间和结束时间,所述查询单元303,具体用于:
执行n次查询过程,i为不大于n的正整数,n为正整数,第i次查询过程包括:
在第i个目标日志块查找满足所述查询条件的日志,得到第i个日志集合,所述目标日志包括所述日志集合;
在所述目标日志块包括第i+1个目标日志块时,执行下一次查询过程;
其中,第1个目标日志块为所述起始时间所在的日志块,所述第i+1个目标日志块为在所述第i个目标日志块的时间之后距离所述第i个目标日志块时间最近的日志块。
在一种可能实现的方式中,所述查询单元303,具体用于:
将所述多个日志块的中间位置的日志的时间戳确定为待确定时间;
判断所述起始时间与待确定时间的大小关系;
若所述待确定时间等于起始时间,则将待确定时间所在日志块确定为所述第1个目标日志块,
若所述待确定时间小于起始时间,则将所述起始时间所在日志块到所述多个日志块的最后一个日志块之间的中间位置的日志的时间戳确定为待确定时间,继续执行判断所述起始时间与待确定时间的大小关系,直至所述待确定时间等于起始时间;
若所述待确定时间大于起始时间,则将所述多个日志块的第一个日志块与所述起始时间所在日志块之间的中间位置的日志的时间戳确定为待确定时间,继续执行判断所述起始时间与待确定时间的大小关系,直至所述待确定时间等于起始时间。
在一种可能实现的方式中,所述查询单元303,具体用于:
根据内存映射函数对所述第i个目标日志块进行处理,得到第i个映射日志块,所述第i个映射日志块与所述第i个目标日志块存在映射关系;
在所述第i个映射日志块查找满足所述查询条件的日志,得到所述第i个日志集合。
在一种可能实现的方式中,所述查询单元303,具体用于:
若所述结束时间在所述第i+1个目标日志块中第1条日志的时间戳之后,所述目标日志块包括所述第i+1个目标日志块。
在一种可能实现的方式中,所述查询指令还包括查询模式,所述查询条件由所述查询模式和所述输入关键词确定。
在一种可能实现的方式中,当所述查询模式为模糊查询时,所述满足查询条件的日志是所述目标日志块中包括所述输入关键词的日志。
需要说明的是,各个操作的实现还可以对应参照图2所示的方法实施例的相应描述,此处不再赘述。
如图4所示,图4是本申请实施例提供的另一种日志查询装置的结构示意图,该装置20包括至少一个处理器401,至少一个存储器402、至少一个通信接口403。此外,该设备还可以包括天线等通用部件,在此不再详述。
处理器401可以是通用中央处理器(cpu),微处理器,特定应用集成电路(application-specificintegratedcircuit,asic),或一个或多个用于控制以上方案程序执行的集成电路。
通信接口403,用于与其他设备或通信网络通信,如以太网,无线接入网(ran),核心网,无线局域网(wirelesslocalareanetworks,wlan)等。
存储器402可以是只读存储器(read-onlymemory,rom)或可存储静态信息和指令的其他类型的静态存储设备,随机存取存储器(randomaccessmemory,ram)或者可存储信息和指令的其他类型的动态存储设备,也可以是电可擦可编程只读存储器(electricallyerasableprogrammableread-onlymemory,eeprom)、只读光盘(compactdiscread-onlymemory,cd-rom)或其他光盘存储、光碟存储(包括压缩光碟、激光碟、光碟、数字通用光碟、蓝光光碟等)、磁盘存储介质或者其他磁存储设备、或者能够用于携带或存储具有指令或数据结构形式的期望的程序代码并能够由计算机存取的任何其他介质,但不限于此。存储器可以是独立存在,通过总线与处理器相连接。存储器也可以和处理器集成在一起。
其中,所述存储器402用于存储执行以上方案的应用程序代码,并由处理器401来控制执行。所述处理器401用于执行所述存储器402中存储的应用程序代码。
存储器402存储的代码可执行以上图2提供的日志查询方法,比如,当装置20为日志查询装置时,接收查询指令,查询指令包括日志路径、输入时间以及输入关键词;对日志路径下的日志进行划分,得到多个日志块,日志路径下的日志按照时间戳的先后排序,多个日志块中每个日志块包括一个时间段内的日志;在目标日志块查找满足查询条件的日志,得到目标日志,目标日志块为多个日志块中与输入时间包含重叠时间的时间段对应的日志块,查询条件是基于输入关键词生成的;输出目标日志。
需要说明的是,本申请实施例中所描述的日志查询装置中各功能单元的功能可参照图2所示的方法实施例的相应描述,此处不再赘述。
在本申请中,所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本申请实施例方案的目的。
另外,在本申请各个实施例中的各功能组件可以集成在一个组件也可以是各个组件单独物理存在,也可以是两个或两个以上组件集成在一个组件中。上述集成的组件既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。
所述集成的组件如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本申请的技术方案本质上或者说对现有技术做出贡献的部分,或者该技术方案的全部或部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行各个本申请实施例所述方法的全部或部分步骤。而前述的存储介质包括:u盘、移动硬盘、只读存储器(read-onlymemory,rom)、随机存取存储器(randomaccessmemory,ram)、磁碟或者光盘等各种可以存储程序代码的介质。
以上所述,仅为本申请的具体实施方式,但本申请的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本申请揭露的技术范围内,可轻易想到各种等效的修改或替换,这些修改或替换都应涵盖在本申请的保护范围之内。因此,本申请的保护范围应以权利要求的保护范围为准。
应理解,在本申请的各种实施例中,上述各过程的序号的大小并不意味着执行顺序的先后,各过程的执行顺序应以其功能和内在逻辑确定,而不应对本申请实施例的实施过程构成任何限定。尽管在此结合各实施例对本申请进行了描述,然而,在实施例所要求保护的本申请过程中,本领域技术人员可理解并实现公开实施例的其他变化。