CN113918606B - 日志查询方法及装置 - Google Patents

日志查询方法及装置 Download PDF

Info

Publication number
CN113918606B
CN113918606B CN202111527714.4A CN202111527714A CN113918606B CN 113918606 B CN113918606 B CN 113918606B CN 202111527714 A CN202111527714 A CN 202111527714A CN 113918606 B CN113918606 B CN 113918606B
Authority
CN
China
Prior art keywords
query
log
target
field
rule
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
CN202111527714.4A
Other languages
English (en)
Other versions
CN113918606A (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.)
Ecarx Hubei Tech Co Ltd
Original Assignee
Ecarx Hubei Tech 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 Ecarx Hubei Tech Co Ltd filed Critical Ecarx Hubei Tech Co Ltd
Priority to CN202111527714.4A priority Critical patent/CN113918606B/zh
Publication of CN113918606A publication Critical patent/CN113918606A/zh
Application granted granted Critical
Publication of CN113918606B publication Critical patent/CN113918606B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/24Querying
    • G06F16/245Query processing
    • G06F16/2455Query execution
    • G06F16/24552Database cache management
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/24Querying
    • G06F16/245Query processing
    • G06F16/2458Special types of queries, e.g. statistical queries, fuzzy queries or distributed queries
    • G06F16/2474Sequence data queries, e.g. querying versioned data
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/24Querying
    • G06F16/248Presentation of query results

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Databases & Information Systems (AREA)
  • General Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • Data Mining & Analysis (AREA)
  • Computational Linguistics (AREA)
  • Fuzzy Systems (AREA)
  • Mathematical Physics (AREA)
  • Probability & Statistics with Applications (AREA)
  • Software Systems (AREA)
  • Debugging And Monitoring (AREA)

Abstract

本申请公开了一种日志查询方法及装置。其中,该方法包括:获取输入的查询信息,其中,查询信息中至少包括:目标规则名称和目标查询条件;从规则库中确定与目标规则名称对应的目标日志查询规则,并确定与目标日志查询规则对应的目标日志查询链路,其中,规则库中包括多个预先配置的日志查询规则,每个日志查询规则中包括预先配置的日志查询链路;依据目标日志查询链路查询与目标查询条件对应的第一目标日志信息,并展示第一目标日志信息。本申请解决了相关技术中日志查询流程繁琐,用户使用不便的技术问题。

Description

日志查询方法及装置
技术领域
本申请涉及日志查询技术领域,具体而言,涉及一种日志查询方法及装置。
背景技术
随着业务系统规模的扩大,微服务系统不断增加,业务的逻辑复杂性也不断提高,在日志库中定位查询或在测试过程中查询的日志关联性和逻辑性越来越复杂,搜索的日志库也越来越多,而现有的日志搜索方案只能在单个服务日志库中单独进行搜索查看结果,在关联性中的关键字(查询字段,条件字段,提取字段)组合不能自动识别关键字结果,也不能保存,导致无法形成业务链路的关联,业务之间的逻辑需要人工识别并一一记录对应,再分别到对应的服务日志库去查询。该方案需要每位操作人员对业务的关联性和逻辑性都非常了解,对于对业务的关联性和逻辑性不熟悉的人来说,查询就较为困难,如不知道流程中某个日志库的关键字,或不知道各服务之间的关联关系,就无法精确查询到所需结果,这就需要通过进行业务培训等手段来解决问题,导致投入的人力、时间、沟通成本增加;且当日志库搜索网页关闭后,再次查询时,需要人工再次重复上述逐一操作,不可一键式重复操作,对于业务相同的查询来说效率较慢,不能解放人工重复性的工作;另外由于查询结果分散在各个页面,且内容冗余,各个关键字搜索的结果内容需要人工鉴别,不够精准简约。
针对上述的问题,目前尚未提出有效的解决方案。
发明内容
本申请实施例提供了一种日志查询方法及装置,以至少解决相关技术中日志查询流程繁琐,用户使用不便的技术问题。
根据本申请实施例的一个方面,提供了一种日志查询方法,包括:获取输入的查询信息,其中,所述查询信息中至少包括:目标规则名称和目标查询条件;从规则库中确定与所述目标规则名称对应的目标日志查询规则,并确定与所述目标日志查询规则对应的目标日志查询链路,其中,所述规则库中包括多个预先配置的日志查询规则,每个所述日志查询规则中包括预先配置的日志查询链路;依据所述目标日志查询链路查询与所述目标查询条件对应的第一目标日志信息,并展示所述第一目标日志信息。
可选地,所述目标查询条件至少包括:目标查询内容和目标查询时间段,确定所述目标日志查询链路中的链路序号为一的第一日志查询子链路所对应的第一目标日志库,其中,所述目标日志查询链路中包括多条日志查询子链路,每条所述日志查询子链路具有对应的链路序号和目标日志库;将所述目标查询内容作为所述第一日志查询子链路的第一查询字段;在所述第一目标日志库中查询与所述第一查询字段的值及所述目标查询时间段相匹配的内容,得到第一查询结果,其中,所述第一查询结果为所述第一目标日志信息的子集;判断所述第一日志查询子链路是否存在第一提取字段;若不存在,则停止查询;若存在,则依据所述第一提取字段确定第二日志查询子链路的第二条件字段,并依据所述第二日志查询子链路进行查询,获得第二查询结果,其中,所述第二日志查询子链路为所述目标日志查询链路中链路序号大于一的日志查询子链路,所述第二查询结果为所述第一目标日志信息的子集。
可选地,依据所述链路序号,依次对各个所述第二日志查询子链路进行查询,其中,对于任一所述第二日志查询子链路,确定所述第二日志查询子链路对应的第二目标日志库;若上一条日志查询子链路存在提取字段,将所述上一条日志查询子链路的提取字段作为所述第二日志查询子链路的第二条件字段;判断所述目标查询条件是否包括补充查询内容;若所述目标查询条件不包括所述补充查询内容,则直接在所述第二目标日志库中查询与所述第二条件字段的值及所述目标查询时间段相匹配的内容,得到第二查询结果;若所述目标查询条件包括所述补充查询内容,则将所述补充查询内容作为所述第二日志查询子链路的第二查询字段,并依据所述第二日志查询子链路的第二查询规则,在所述第二目标日志库中查询与所述目标查询时间段以及所述第二条件字段的值、和/或所述第二查询字段的值相匹配的内容,得到所述第二查询结果;判断所述第二日志查询子链路是否存在第二提取字段;若不存在,则停止查询;若存在,则继续依据所述第二日志查询子链路的下一条日志查询子链路进行查询。
可选地,确定所述第二日志查询子链路配置的所述第二查询字段的类型,其中,所述第二查询字段的类型包括:键类型查询字段和值类型查询字段,所述键类型查询字段为所述查询字段的名称,所述值类型查询字段为所述查询字段的值;在所述第二查询字段为所述键类型查询字段时,依据所述条件字段的值及所述第二查询字段的名称确定所述第二查询字段的值;在所述第二查询字段为所述值类型查询字段时,直接确定所述第二查询字段的值。
可选地,所述第二查询规则包括以下其中之一:第一类查询规则、第二类查询规则或第三类查询规则,在所述第二查询规则为所述第一类查询规则时,按照与逻辑在所述第二目标日志库中查询同时与所述第二条件字段的值、所述第二查询字段的值及所述目标查询时间段相匹配的内容,得到所述第二查询结果;在所述第二查询规则为所述第二类查询规则时,按照或逻辑在所述第二目标日志库中分别查询与所述第二条件字段的值及所述目标查询时间段相匹配的内容,以及与所述第二查询字段的值及所述目标查询时间段相匹配的内容,得到所述第二查询结果;在所述第二查询规则为所述第三类查询规则时,在所述第二目标日志库中查询与所述第二查询字段的值及所述目标查询时间段相匹配的内容,得到所述第二查询结果。
可选地,所述规则库中任一所述日志查询规则具有对应的规则名称、规则描述和所述日志查询链路,任一所述日志查询规则的配置过程包括:确定所述日志查询规则对应的业务场景,确定与所述业务场景对应的日志查询流程,其中,所述日志查询流程用于从所述业务场景的各个业务环节所对应的日志库中查询第二目标日志信息;依据所述业务场景确定所述日志查询规则对应的所述规则名称;依据所述日志查询流程确定所述日志查询规则对应的所述规则描述,所述规则描述用于定义所述日志查询流程在所述业务场景的各个业务环节所对应的日志库中查询的字段;依据所述日志查询流程配置所述日志查询规则对应的所述日志查询链路,其中,所述日志查询链路中包括与所述业务场景的各个业务环节一一对应的多条日志查询子链路。
可选地,所述日志查询子链路中包括:链路序号,项目名称,目标日志库,条件字段,查询字段,查询规则及提取字段,任一所述日志查询子链路的配置过程包括:确定所述日志查询子链路的所述链路序号及所述项目名称,其中,所述链路序号用于表示所述日志查询子链路在所述日志查询流程中的顺序,所述项目名称用于表示所述日志查询子链路对应的所述业务场景的目标业务环节;依据所述项目名称,确定与所述业务场景的目标业务环节对应的目标日志库;确定所述条件字段,所述条件字段用于从所述目标日志库中查询与所述条件字段的值相匹配的内容;确定所述查询字段,所述查询字段包括键类型查询字段和值类型查询字段,其中,所述键类型查询字段为所述查询字段的名称,用于从所述目标日志库中查询与所述查询字段的名称对应的值相匹配的内容,所述值类型查询字段为所述查询字段的值,用于从所述目标日志库中查询与所述查询字段的值相匹配的内容;确定所述查询规则,所述查询规则包括以下其中之一:第一类查询规则,第二类查询规则或第三类查询规则,其中,所述第一类查询规则用于将所述条件字段和所述查询字段按照与逻辑在所述目标日志库中进行查询,所述第二类查询规则用于将所述条件字段和所述查询字段按照或逻辑在所述目标日志库中进行查询,所述第三类查询规则用于仅依据所述查询字段在所述目标日志库中进行查询;确定所述提取字段,所述提取字段用于作为所述日志查询子链路的下一条日志查询子链路的条件字段。
可选地,将所述第一目标日志信息中的至少一个查询结果按照与所述至少一个查询结果对应的至少一条日志查询子链路的链路序号进行排序,并统一进行展示。
根据本申请实施例的另一方面,还提供了一种日志查询装置,包括:获取模块,用于获取输入的查询信息,其中,所述查询信息中至少包括:目标规则名称和目标查询条件;确定模块,用于从规则库中确定与所述目标规则名称对应的目标日志查询规则,并确定与所述目标日志查询规则对应的目标日志查询链路,其中,所述规则库中包括多个预先配置的日志查询规则,每个所述日志查询规则中包括预先配置的日志查询链路;查询模块,用于依据所述目标日志查询链路查询与所述目标查询条件对应的第一目标日志信息,并展示所述第一目标日志信息。
根据本申请实施例的另一方面,还提供了一种电子设备,包括:存储器和处理器,其中,所述存储器中存储有计算机程序,所述处理器被配置为通过所述计算机程序执行上述的日志查询方法。
在本申请实施例中,首先获取输入的查询信息,该查询信息中至少包括:目标规则名称和目标查询条件;然后从规则库中确定与目标规则名称对应的目标日志查询规则,并确定与目标日志查询规则对应的目标日志查询链路,其中,规则库中包括多个预先配置的日志查询规则,每个日志查询规则中包括预先配置的日志查询链路;依据目标日志查询链路查询与目标查询条件对应的第一目标日志信息,并展示第一目标日志信息。其中,通过提前根据业务场景灵活配置日志查询规则及链路,极大简化了用户在查询日志中繁琐的操作步骤;通过已配置的日志查询规则形成业务链路的关联,使得对业务流程不熟悉的人员也可以实现一键式查询,快速搜索到对应业务链路的相关日志信息;通过将各个搜索结果在统一界面展示,精简了日志结果显示,提高了日志查询效率,进而解决了相关技术中日志查询流程繁琐,用户使用不便技术的问题。
附图说明
此处所说明的附图用来提供对本申请的进一步理解,构成本申请的一部分,本申请的示意性实施例及其说明用于解释本申请,并不构成对本申请的不当限定。在附图中:
图1是根据本申请实施例的一种日志查询方法的流程示意图;
图2是根据本申请实施例的一种前端日志查询界面的示意图;
图3是根据本申请实施例的一种前端日志查询规则配置界面的示意图;
图4是根据本申请实施例的一种日志查询逻辑的示意图;
图5是根据本申请实施例的一种日志查询的流程示意图;
图6是根据本申请实施例的一种日志查询装置的结构示意图;
图7是根据本申请实施例的一种电子设备的结构示意图。
具体实施方式
为了使本技术领域的人员更好地理解本申请方案,下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本申请一部分的实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都应当属于本申请保护的范围。
需要说明的是,本申请的说明书和权利要求书及上述附图中的术语“第一”、“第二”等是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。应该理解这样使用的数据在适当情况下可以互换,以便这里描述的本申请的实施例能够以除了在这里图示或描述的那些以外的顺序实施。此外,术语“包括”和“具有”以及它们的任何变形,意图在于覆盖不排他的包含,例如,包含了一系列步骤或单元的过程、方法、系统、产品或设备不必限于清楚地列出的那些步骤或单元,而是可包括没有清楚地列出的或对于这些过程、方法、产品或设备固有的其它步骤或单元。
实施例1
根据本申请实施例,提供了一种日志查询方法的实施例,需要说明的是,在附图的流程图示出的步骤可以在诸如一组计算机可执行指令的计算机系统中执行,并且,虽然在流程图中示出了逻辑顺序,但是在某些情况下,可以以不同于此处的顺序执行所示出或描述的步骤。
图1是根据本申请实施例的一种可选的日志查询方法,如图1所示,该方法至少包括步骤S102-S106,其中:
步骤S102,获取输入的查询信息,其中,查询信息中至少包括:目标规则名称和目标查询条件。
具体地,目标查询条件至少包括:目标查询内容和目标查询时间段,可选地,目标查询条件还包括补充查询内容。其中,目标查询内容为用户输入的搜索内容,目标查询时间段为用户输入的查询起始时间段,用于确定查询时间的范围,当根据输入的搜索内容无法精确查询到需要的日志信息时,还可以输入补充查询内容用来辅助查询。
图2示出了一种可选的前端日志查询界面的示意图,其中,“生产环境IOS行车日志查询”即为对应的目标规则名称,下方的“Vin码and journallog and list”是对应的规则描述,用于提示用户在搜索框中输入相应的目标查询内容,“vehicle-history-service”用于提示用户输入相应的补充查询内容,时间框则用于输入目标查询时间段对应的开始日期和结束日期,在用户点击“搜索”时,系统会生成对应的搜索指令以查询需要的日志信息。
步骤S104,从规则库中确定与目标规则名称对应的目标日志查询规则,并确定与目标日志查询规则对应的目标日志查询链路,其中,规则库中包括多个预先配置的日志查询规则,每个日志查询规则中包括预先配置的日志查询链路。
为解决相关技术中日志查询流程繁琐,用户使用不便的技术问题,本申请实施例提出提前根据业务场景灵活配置日志查询规则及链路,以简化用户在查询日志中繁琐的操作步骤;通过已配置的日志查询规则形成业务链路的关联,使得对业务流程不熟悉的人员也可以实现一键式查询,快速搜索到对应业务链路的相关日志信息。
在本申请一些可选的实施例中,可以先建立配置有多个日志查询规则的规则库,该规则库中任一日志查询规则均具有对应的规则名称、规则描述和日志查询链路,其中,一种可选的日志查询规则的配置过程如下。
首先,确定日志查询规则对应的业务场景,并确定与业务场景对应的日志查询流程,该日志查询流程用于从业务场景的各个业务环节所对应的日志库中查询第二目标日志信息;然后,依据业务场景确定日志查询规则对应的规则名称;依据日志查询流程确定日志查询规则对应的规则描述,该规则描述用于定义日志查询流程在业务场景的各个业务环节所对应的日志库中查询的字段;再依据日志查询流程配置日志查询规则对应的日志查询链路,其中,日志查询链路中包括与业务场景的各个业务环节一一对应的多条日志查询子链路。
具体地,每个日志查询规则对应一种业务场景,该业务场景对应有日志查询流程,该日志查询流程是为了从业务场景涉及的各个环节对应的日志库中查询需要的日志信息。日志查询规则的规则名称通常用于限定对应的业务场景,即一个规则名称对应一种业务场景;日志查询规则的规则描述则是日志查询流程在日志中查询的字段,是对后续查询日志时需要输入的查询条件的定义,例如需要输入车架号、车控指令、行车日志等关键字段;日志查询规则的日志查询链路中包括若干条日志查询子链路,而每条日志查询子链路中均包括:链路序号,项目名称,目标日志库,条件字段模块,查询字段模块,查询规则及提取字段模块。
在本申请一些可选的实施例中,日志查询子链路的配置过程包括:
首先确定日志查询子链路的链路序号及项目名称,其中,链路序号用于表示日志查询子链路在日志查询流程中的顺序,项目名称用于表示日志查询子链路对应的业务场景的目标业务环节;然后依据项目名称,确定与业务场景的目标业务环节对应的目标日志库。
其中,项目名称又称project名称,在配置时,可以先从所有的项目名称目录下选择该日志查询流程需要查询的project名称;由于一个project名称下对应有一个或多个日志库,可以先显示对应的日志库列表,然后从日志库列表中选择该日志查询流程需要查询的日志库,即确定project名称及与之对应的目标日志库。在日志查询时,通过确定该日志查询流程需要查询的project名称,并进一步确定project名称下需要查询的目标日志库,二者组合即可以确定待查询的日志坐标。
之后,再确定条件字段,条件字段用于从目标日志库中查询与条件字段的值相匹配的内容,具体地,条件字段用于查询当前子链路对应的日志中与条件字段相匹配的内容。
在当前子链路需要查询的内容不能仅仅通过条件字段进行确定时,需要配置查询字段,查询字段包括键类型查询字段(key)和值类型查询字段(value),其中,键类型查询字段为查询字段的名称,用于从目标日志库中查询与查询字段的名称对应的值相匹配的内容,值类型查询字段即为查询字段的值,用于从目标日志库中查询与查询字段的值相匹配的内容。
可选地,还需要为日志查询子链路配置查询规则,查询规则通常包括以下其中之一:第一类查询规则(and),第二类查询规则(or)和第三类查询规则(none),其中,第一类查询规则用于将条件字段和查询字段按照与逻辑在目标日志库中进行查询,第二类查询规则用于将条件字段和查询字段按照或逻辑在目标日志库中进行查询,第三类查询规则用于仅依据查询字段在目标日志库中进行查询。
通常还需要确定目标日志库对应的提取字段,提取字段用于作为日志查询子链路的下一条日志查询子链路的条件字段。具体地,提取字段是配置目标日志库后提取的字段名称,通过自动检索名称对应的内容,再将名称和对应的内容保存至内存,可以作为下一子链路的条件字段的输入。由于“提取字段”和“条件字段”之间具有业务的关联作用,将该子链路对应的目标日志库中的提取字段作为下一子链路的条件字段,下一子链路可以根据该提取字段在对应的日志库中进行查询对应的内容。
图3示出了一种可选的前端日志查询规则配置的界面示意图,该业务场景主要是对汽车行车日志的查询,其规则名称为“生产环境IOS行车日志查询”,对应的规则描述为“Vin码and journallog and list”,下方则是依次配置每条日志查询子链路中的链路序号、project名称、目标日志库、条件字段模块、查询规则、查询字段模块及提取字段模块对应的内容。其中,在第一条日志查询子链路中,其查询字段由用户输入的目标查询内容确定,查询规则设置为“none”,即不考虑条件字段;由于该链路的目标日志库具有对应的提取字段,可以将该提取字段作为第二条日志查询子链路的条件字段,第二条日志查询子链路的查询字段则根据用户输入的补充查询内容确定。
步骤S106,依据目标日志查询链路查询与目标查询条件对应的第一目标日志信息,并展示第一目标日志信息。
当用户在前端输入目标规则名称、目标查询内容、目标查询时间段、补充查询内容等信息后,可以从规则库中确定与目标规则名称对应的目标日志查询规则,并确定对应的目标日志查询链路,然后即可依据目标日志查询链路查询得到需要的第一目标日志信息。在本申请一些可选的实施例中,可以依据该目标日志查询链路对应的多条日志查询子链路的链路序号依次进行查询。
具体地,首先确定目标日志查询链路中的链路序号为一的第一日志查询子链路所对应的第一目标日志库;将目标查询内容作为第一日志查询子链路的第一查询字段;在第一目标日志库中查询与第一查询字段的值及目标查询时间段相匹配的内容,得到第一查询结果,该第一查询结果为第一目标日志信息的子集。
得到第一查询结果后,可以先将第一查询结果以键值对的形式进行缓存,便于后续统一展示给用户。具体地,由于每次查询会生成一个id信息,可以将该id信息作为一个键(key),而得到的查询结果即为对应的值(value),将其以键值对的形式存储至redis数据库(日志型key-value数据库),并以对应的日志查询子链路的链路序号进行编号,即可实现对查询结果的信息缓存效果。
之后,判断第一日志查询子链路是否存在第一提取字段;若不存在,则停止查询;若存在,则确定所述目标日志查询链路中链路序号大于一的日志查询子链路为第二日志查询子链路,依据第一提取字段确定第二日志查询子链路的第二条件字段,并依据所述第二日志查询子链路进行查询。
具体地,在依据第二日志查询子链路查询时,需要依据所述链路序号,依次对各个所述第二日志查询子链路进行查询,其中,对于任一所述第二日志查询子链路,首先确定该第二日志查询子链路对应的第二目标日志库,然后将该第二日志查询子链路的上一条日志查询子链路的提取字段作为第二日志查询子链路的第二条件字段。
可选地,可以确定第二日志查询子链路配置的第二查询字段的类型;在第二查询字段为键类型查询字段时,依据条件字段的值及第二查询字段的名称确定第二查询字段的值;在第二查询字段为值类型查询字段时,则直接确定第二查询字段的值。
然后判断目标查询条件是否包括补充查询内容,若目标查询条件不包括补充查询内容,则直接在第二目标日志库中查询与第二条件字段的值及目标查询时间段相匹配的内容,得到第二查询结果,该第二查询结果也为第一目标日志信息的子集,可以将第二查询结果也以键值对的形式进行缓存;若目标查询条件包括补充查询内容,则将补充查询内容作为第二日志查询子链路的第二查询字段,并依据第二日志查询子链路的第二查询规则,在第二目标日志库中查询与目标查询时间段、第二条件字段的值、和或第二查询字段的值相匹配的内容,得到第二查询结果,将第二查询结果以键值对的形式进行缓存。
其中,在第二查询规则为第一类查询规则时,在第二目标日志库中查询同时与第二条件字段的值、第二查询字段的值及目标查询时间段相匹配的内容,得到第二查询结果;在第二查询规则为第二类查询规则时,在第二目标日志库中分别查询与第二条件字段的值及目标查询时间段相匹配的内容,以及与第二查询字段的值及目标查询时间段相匹配的内容得到第二查询结果;在第二查询规则为第三类查询规则时,在第二目标日志库中查询与第二查询字段的值及目标查询时间段相匹配的内容,得到第二查询结果。
之后,再判断第二日志查询子链路是否存在第二提取字段;若不存在,则停止查询;若存在,则继续依据第二日志查询子链路的下一条日志查询子链路进行查询。可以理解地,只要当前的日志查询子链路中具有提取字段,就将该提取字段作为下一条日志查询子链路的条件字段并继续进行查询,直至当前的日志查询子链路不具有提取字段,则结束查询。
图4示出了一种可选的日志查询逻辑的示意图,其中,当在前端输入查询内容、规则名称及查询时间段后,确定对应的日志查询规则,并确定对应的日志查询链路,然后依据对应的多条日志查询子链路的链路序号依次进行查询。具体地,先判断当前日志查询子链路的链路序号等于一还是大于一,若等于一,则将该查询内容作为查询字段,从该日志查询子链路的目标日志库中查询相匹配的内容;然后判断是否存在提取字段,若不存在,则直接将查询结果存入rsdis数据库进行缓存,若存在,则根据提取字段的名称检索对应的值,将名称与值缓存至内存,该提取字段作为下一条日志查询子链路的条件字段,然后继续查询下一条日志查询子链路。
若链路序号大于一,则首先判断查询字段类型,若为键类型,则依据其名称确定对应的值,该值必须与条件字段的值相对应;若为值类型,则直接确定其值。然后判断查询字段是否为空,即判断是否存在补充查询内容,若不存在,则直接依据条件字段的值进行查询;若存在,则进一步确定查询规则,若为第三类查询规则(none),则直接依据查询字段的值进行查询;若为第一类查询规则(and),则将条件字段的值与查询字段的值按照与逻辑进行查询,即查询同时与条件字段的值和查询字段的值相匹配的内容;若为第二类查询规则(or),则将条件字段的值与查询字段的值按照或逻辑进行查询,即分别查询与条件字段的值或查询字段的值相匹配的内容,得到查询结果后,再次判断是否存在提取字段,过程如上。
在本申请一些可选的实施例中,在完成查询后,由于redis数据库中存储的第一目标日志信息,即多个查询结果是按照对应的日志查询子链路的链路序号进行编号的,可以将第一目标日志信息中的至少一个查询结果按照与至少一个查询结果对应的至少一条日志查询子链路的链路序号进行排序,并统一进行展示。可选地,可以列出每个查询结果所对应的条件字段值和查询字段值的组合列表,用户可以根据需要点击列出中的一项,查看对应的日志信息。通过这种方式,既精简了日志结果显示,又提高了日志查询效率。
以用户查询APP控车指令是否发送成功为例,假设控车业务部署有APP和K8S两个大的日志项目,APP日志项目对应日志库A,K8S对应有日志库B、日志库C、日志库D,一个日志库对应业务执行的一个环节。整个控车链路需要经过APP和K8S两个大的日志项目和四个日志库,其链路过程为:输入VIN码和控车指令,选择对应时间在APP(日志库A)中获取到对应的sessionid;在K8S(日志库B)中输入上述sessionid获取到新的tranceid;在K8S(日志库C)中输入上述的tranceid获取到一processid;在K8S(日志库D)中输入上述的processid获取最后一步的关键信息(以上所有的id是在各服务过程中产生的)。
按照相关技术,需要在上述日志库中获取库和库之间的跟车控链路关联字段,逐步查询,信息量庞大且耗时较长。比如日志库A中没有查找到问题,那么需要根据日志库A确定与日志库B的关联字段,查找日志库B中与问题相关的日志,如果没有查找则继续查找下一日志库中的日志。通过本申请实施例的日志查询方法,只需设定好相应的日志查询规则后,选择规则,直接输入VIN码和控车指令类型及控车发生的时间段,然后点击搜索,即可快速获取到本次控车的整个链路细节,便于问题排查。
图5示出了一种可选的日志查询流程的示意图,其中,用户进入软件后,首先根据业务链路配置日志查询规则,然后输入查询内容和查询时间段,并选择对应的规则,点击搜索后,即可获得结果显示。其中,日志查询规则通常是预先配置的,也就是说,在实际查询时,用户只需要输入查询内容和查询时间段等信息并选择对应的日志查询规则,然后即可实现一键式搜索,大大提高了日志查询效率。
在本申请实施例中,首先获取输入的查询信息,该查询信息中至少包括:目标规则名称和目标查询条件;然后从规则库中确定与目标规则名称对应的目标日志查询规则,并确定与目标日志查询规则对应的目标日志查询链路,其中,规则库中包括多个预先配置的日志查询规则,每个日志查询规则中包括预先配置的日志查询链路;依据目标日志查询链路查询与目标查询条件对应的第一目标日志信息,并展示第一目标日志信息。其中,通过提前根据业务场景灵活配置日志查询规则及链路,极大简化了用户在查询日志中繁琐的操作步骤;通过已配置的日志查询规则形成业务链路的关联,使得对业务流程不熟悉的人员也可以实现一键式查询,快速搜索到对应业务链路的相关日志信息;通过将各个搜索结果在统一界面展示,精简了日志结果显示,提高了日志查询效率,进而解决了相关技术中日志查询流程繁琐,用户使用不便技术的问题。
实施例2
根据本申请实施例,还提供了一种用于实现上述日志查询方法的日志查询装置,如图6所示,该装置包括获取模块60,确定模块62和查询模块64,其中:
获取模块60,用于获取输入的查询信息,其中,查询信息中至少包括:目标规则名称和目标查询条件。
确定模块62,用于从规则库中确定与目标规则名称对应的目标日志查询规则,并确定与目标日志查询规则对应的目标日志查询链路,其中,规则库中包括多个预先配置的日志查询规则,每个日志查询规则中包括预先配置的日志查询链路。
查询模块64,用于依据目标日志查询链路查询与目标查询条件对应的第一目标日志信息,并展示第一目标日志信息。
需要说明的是,本申请实施例中的日志查询装置中的各模块与实施例1中的日志查询方法实施步骤一一对应,由于实施例1中已经进行了详尽的描述,本实施例中部分未体现的细节可以参考实施例1,在此不再过多赘述。
实施例3
根据本申请实施例,还提供了一种电子设备,如图7所示,该电子设备包括:存储器70和处理器72,其中,存储器70中存储有计算机程序,处理器72被配置为通过计算机程序执行实施例1中的日志查询方法。
具体地,该计算机程序运行时执行实现以下步骤:获取输入的查询信息,其中,查询信息中至少包括:目标规则名称和目标查询条件;从规则库中确定与目标规则名称对应的目标日志查询规则,并确定与目标日志查询规则对应的目标日志查询链路,其中,规则库中包括多个预先配置的日志查询规则,每个日志查询规则中包括预先配置的日志查询链路;依据目标日志查询链路查询与目标查询条件对应的第一目标日志信息,并展示第一目标日志信息。
上述本申请实施例序号仅仅为了描述,不代表实施例的优劣。
在本申请的上述实施例中,对各个实施例的描述都各有侧重,某个实施例中没有详述的部分,可以参见其他实施例的相关描述。
在本申请所提供的几个实施例中,应该理解到,所揭露的技术内容,可通过其它的方式实现。其中,以上所描述的装置实施例仅仅是示意性的,例如单元的划分,可以为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,单元或模块的间接耦合或通信连接,可以是电性或其它的形式。
作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
另外,在本申请各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。
集成的单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本申请的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的全部或部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可为个人计算机、服务器或者网络设备等)执行本申请各个实施例方法的全部或部分步骤。而前述的存储介质包括:U盘、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,Random Access Memory)、移动硬盘、磁碟或者光盘等各种可以存储程序代码的介质。
以上仅是本申请的优选实施方式,应当指出,对于本技术领域的普通技术人员来说,在不脱离本申请原理的前提下,还可以做出若干改进和润饰,这些改进和润饰也应视为本申请的保护范围。

Claims (9)

1.一种日志查询方法,其特征在于,包括:
获取输入的查询信息,其中,所述查询信息中至少包括:目标规则名称和目标查询条件,所述目标查询条件至少包括:目标查询内容和目标查询时间段;
从规则库中确定与所述目标规则名称对应的目标日志查询规则,并确定与所述目标日志查询规则对应的目标日志查询链路,其中,所述规则库中包括多个预先配置的日志查询规则,每个所述日志查询规则中包括预先配置的日志查询链路;
依据所述目标日志查询链路查询与所述目标查询条件对应的第一目标日志信息,并展示所述第一目标日志信息;
其中,依据所述目标日志查询链路查询与所述目标查询条件对应的第一目标日志信息,包括:确定所述目标日志查询链路中的链路序号为一的第一日志查询子链路所对应的第一目标日志库,其中,所述目标日志查询链路中包括多条日志查询子链路,每条所述日志查询子链路具有对应的链路序号和目标日志库;将所述目标查询内容作为所述第一日志查询子链路的第一查询字段;在所述第一目标日志库中查询与所述第一查询字段的值及所述目标查询时间段相匹配的内容,得到第一查询结果,其中,所述第一查询结果为所述第一目标日志信息的子集;判断所述第一日志查询子链路是否存在第一提取字段;若不存在,则停止查询;若存在,则依据所述第一提取字段确定第二日志查询子链路的第二条件字段,并依据所述第二日志查询子链路进行查询,获得第二查询结果,其中,所述第二日志查询子链路为所述目标日志查询链路中链路序号大于一的日志查询子链路,所述第二查询结果为所述第一目标日志信息的子集。
2.根据权利要求1所述的方法,其特征在于,依据所述第二日志查询子链路进行查询,包括:
依据所述链路序号,依次对各个所述第二日志查询子链路进行查询,其中,对于任一所述第二日志查询子链路,确定所述第二日志查询子链路对应的第二目标日志库;
若上一条日志查询子链路存在提取字段,将所述上一条日志查询子链路的提取字段作为所述第二日志查询子链路的第二条件字段;
判断所述目标查询条件是否包括补充查询内容;
若所述目标查询条件不包括所述补充查询内容,则直接在所述第二目标日志库中查询与所述第二条件字段的值及所述目标查询时间段相匹配的内容,得到第二查询结果;
若所述目标查询条件包括所述补充查询内容,则将所述补充查询内容作为所述第二日志查询子链路的第二查询字段,并依据所述第二日志查询子链路的第二查询规则,在所述第二目标日志库中查询与所述目标查询时间段以及所述第二条件字段的值、和/或所述第二查询字段的值相匹配的内容,得到所述第二查询结果;
判断所述第二日志查询子链路是否存在第二提取字段;若不存在,则停止查询;若存在,则继续依据所述第二日志查询子链路的下一条日志查询子链路进行查询。
3.根据权利要求2所述的方法,其特征在于,在判断所述目标查询条件是否包括补充查询内容之前,所述方法还包括:
确定所述第二日志查询子链路配置的所述第二查询字段的类型,其中,所述第二查询字段的类型包括:键类型查询字段和值类型查询字段,所述键类型查询字段为所述查询字段的名称,所述值类型查询字段为所述查询字段的值;
在所述第二查询字段为所述键类型查询字段时,依据所述条件字段的值及所述第二查询字段的名称确定所述第二查询字段的值;
在所述第二查询字段为所述值类型查询字段时,直接确定所述第二查询字段的值。
4.根据权利要求2所述的方法,其特征在于,所述第二查询规则包括以下其中之一:第一类查询规则、第二类查询规则或第三类查询规则,依据所述第二日志查询子链路的第二查询规则,在所述第二目标日志库中查询与所述目标查询时间段、所述第二条件字段的值、和/或所述第二查询字段的值相匹配的内容,得到所述第二查询结果,包括:
在所述第二查询规则为所述第一类查询规则时,按照与逻辑在所述第二目标日志库中查询同时与所述第二条件字段的值、所述第二查询字段的值及所述目标查询时间段相匹配的内容,得到所述第二查询结果;
在所述第二查询规则为所述第二类查询规则时,按照或逻辑在所述第二目标日志库中分别查询与所述第二条件字段的值及所述目标查询时间段相匹配的内容,以及与所述第二查询字段的值及所述目标查询时间段相匹配的内容,得到所述第二查询结果;
在所述第二查询规则为所述第三类查询规则时,在所述第二目标日志库中查询与所述第二查询字段的值及所述目标查询时间段相匹配的内容,得到所述第二查询结果。
5.根据权利要求1所述的方法,其特征在于,所述规则库中任一所述日志查询规则具有对应的规则名称、规则描述和所述日志查询链路,任一所述日志查询规则的配置过程包括:
确定所述日志查询规则对应的业务场景,确定与所述业务场景对应的日志查询流程,其中,所述日志查询流程用于从所述业务场景的各个业务环节所对应的日志库中查询第二目标日志信息;
依据所述业务场景确定所述日志查询规则对应的所述规则名称;
依据所述日志查询流程确定所述日志查询规则对应的所述规则描述,所述规则描述用于定义所述日志查询流程在所述业务场景的各个业务环节所对应的日志库中查询的字段;
依据所述日志查询流程配置所述日志查询规则对应的所述日志查询链路,其中,所述日志查询链路中包括与所述业务场景的各个业务环节一一对应的多条日志查询子链路。
6.根据权利要求5所述的方法,其特征在于,所述日志查询子链路中包括:链路序号,项目名称,目标日志库,条件字段,查询字段,查询规则及提取字段,任一所述日志查询子链路的配置过程包括:
确定所述日志查询子链路的所述链路序号及所述项目名称,其中,所述链路序号用于表示所述日志查询子链路在所述日志查询流程中的顺序,所述项目名称用于表示所述日志查询子链路对应的所述业务场景的目标业务环节;
依据所述项目名称,确定与所述业务场景的目标业务环节对应的目标日志库;
确定所述条件字段,所述条件字段用于从所述目标日志库中查询与所述条件字段的值相匹配的内容;
确定所述查询字段,所述查询字段包括键类型查询字段和值类型查询字段,其中,所述键类型查询字段为所述查询字段的名称,用于从所述目标日志库中查询与所述查询字段的名称对应的值相匹配的内容,所述值类型查询字段为所述查询字段的值,用于从所述目标日志库中查询与所述查询字段的值相匹配的内容;
确定所述查询规则,所述查询规则包括以下其中之一:第一类查询规则,第二类查询规则或第三类查询规则,其中,所述第一类查询规则用于将所述条件字段和所述查询字段按照与逻辑在所述目标日志库中进行查询,所述第二类查询规则用于将所述条件字段和所述查询字段按照或逻辑在所述目标日志库中进行查询,所述第三类查询规则用于仅依据所述查询字段在所述目标日志库中进行查询;
确定所述提取字段,所述提取字段用于作为所述日志查询子链路的下一条日志查询子链路的条件字段。
7.根据权利要求2所述的方法,其特征在于,展示所述第一目标日志信息,包括:
将所述第一目标日志信息中的至少一个查询结果按照与所述至少一个查询结果对应的至少一条日志查询子链路的链路序号进行排序,并统一进行展示。
8.一种日志查询装置,其特征在于,包括:
获取模块,用于获取输入的查询信息,其中,所述查询信息中至少包括:目标规则名称和目标查询条件,所述目标查询条件至少包括:目标查询内容和目标查询时间段;
确定模块,用于从规则库中确定与所述目标规则名称对应的目标日志查询规则,并确定与所述目标日志查询规则对应的目标日志查询链路,其中,所述规则库中包括多个预先配置的日志查询规则,每个所述日志查询规则中包括预先配置的日志查询链路;
查询模块,用于依据所述目标日志查询链路查询与所述目标查询条件对应的第一目标日志信息,并展示所述第一目标日志信息;其中,依据所述目标日志查询链路查询与所述目标查询条件对应的第一目标日志信息,包括:确定所述目标日志查询链路中的链路序号为一的第一日志查询子链路所对应的第一目标日志库,其中,所述目标日志查询链路中包括多条日志查询子链路,每条所述日志查询子链路具有对应的链路序号和目标日志库;将所述目标查询内容作为所述第一日志查询子链路的第一查询字段;在所述第一目标日志库中查询与所述第一查询字段的值及所述目标查询时间段相匹配的内容,得到第一查询结果,其中,所述第一查询结果为所述第一目标日志信息的子集;判断所述第一日志查询子链路是否存在第一提取字段;若不存在,则停止查询;若存在,则依据所述第一提取字段确定第二日志查询子链路的第二条件字段,并依据所述第二日志查询子链路进行查询,获得第二查询结果,其中,所述第二日志查询子链路为所述目标日志查询链路中链路序号大于一的日志查询子链路,所述第二查询结果为所述第一目标日志信息的子集。
9.一种电子设备,其特征在于,包括:存储器和处理器,其中,所述存储器中存储有计算机程序,所述处理器被配置为通过所述计算机程序执行权利要求1至7中任意一项所述的日志查询方法。
CN202111527714.4A 2021-12-15 2021-12-15 日志查询方法及装置 Active CN113918606B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202111527714.4A CN113918606B (zh) 2021-12-15 2021-12-15 日志查询方法及装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202111527714.4A CN113918606B (zh) 2021-12-15 2021-12-15 日志查询方法及装置

Publications (2)

Publication Number Publication Date
CN113918606A CN113918606A (zh) 2022-01-11
CN113918606B true CN113918606B (zh) 2022-04-19

Family

ID=79249057

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202111527714.4A Active CN113918606B (zh) 2021-12-15 2021-12-15 日志查询方法及装置

Country Status (1)

Country Link
CN (1) CN113918606B (zh)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN115687257A (zh) * 2022-09-26 2023-02-03 郑州云智信安安全技术有限公司 一种日志审计系统规则查询条件的可视化编辑方法和系统

Family Cites Families (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20170124497A1 (en) * 2015-10-28 2017-05-04 Fractal Industries, Inc. System for automated capture and analysis of business information for reliable business venture outcome prediction
CN107220287A (zh) * 2017-04-24 2017-09-29 东软集团股份有限公司 用于日志查询的索引管理方法、装置、存储介质及设备
CN110851324B (zh) * 2019-10-25 2023-03-21 泰康保险集团股份有限公司 基于日志的巡检处理方法、装置以及电子设备、存储介质
CN111177081B (zh) * 2019-12-31 2023-11-14 广州极尚网络技术有限公司 游戏日志内容查询方法、装置、计算机设备和存储介质
CN111522922B (zh) * 2020-03-26 2023-08-22 浙江口碑网络技术有限公司 日志信息查询方法、装置、存储介质及计算机设备

Also Published As

Publication number Publication date
CN113918606A (zh) 2022-01-11

Similar Documents

Publication Publication Date Title
US10956834B2 (en) Tool for machine-learning data analysis
CN112099768B (zh) 业务流程处理方法、装置及计算机可读存储介质
WO2018205903A1 (zh) 零件信息查询方法、系统、电子设备及计算机存储介质
JP5721818B2 (ja) 検索におけるモデル情報群の使用
CN105653537B (zh) 一种数据库应用系统的分页查询方法和装置
US11030254B2 (en) Storage estimation in a data indexing and query system
CN109358898B (zh) 一种信息处理方法、装置、电子设备和存储介质
CN108563736B (zh) 基于数据特征查询数据的方法及装置
CN113608955B (zh) 一种日志记录方法、装置、设备及存储介质
CN104699841A (zh) 提供搜索结果的列表摘要信息的方法和装置
US20200226130A1 (en) Vertical union of feature-based datasets
CN113918606B (zh) 日志查询方法及装置
CN111859076A (zh) 数据爬取方法、装置、计算机设备及计算机可读存储介质
CN111143370A (zh) 用于分析多个数据表之间关系的方法、设备和计算机可读存储介质
CN110990519A (zh) 一种车辆故障诊断方法、装置、电子设备及存储介质
CN114116745A (zh) 一种接口变更的识别及展示方法、装置、设备及介质
CN106682210A (zh) 日志文件查询方法及装置
US7243099B2 (en) Computer-implemented method, system, apparatus for generating user's insight selection by showing an indication of popularity, displaying one or more materialized insight associated with specified item class within the database that potentially match the search
CN106844406B (zh) 检索方法和检索装置
CN110188106B (zh) 一种数据管理方法和装置
CN111859863A (zh) 一种文档的结构转换方法、装置、存储介质及电子设备
CN109948034B (zh) 基于过滤会话实现提取页面信息的方法及装置
CN111507788A (zh) 数据推荐方法、装置、存储介质及处理器
CN115510289A (zh) 一种数据立方体配置方法、装置、电子设备及存储介质
CN114185707A (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
TA01 Transfer of patent application right

Effective date of registration: 20220322

Address after: 430051 No. b1336, chuanggu startup area, taizihu cultural Digital Creative Industry Park, No. 18, Shenlong Avenue, Wuhan Economic and Technological Development Zone, Hubei Province

Applicant after: Yikatong (Hubei) Technology Co.,Ltd.

Address before: 430056 building B (qdxx-f7b), No.7 building, qiedixiexin science and Technology Innovation Park, South taizihu innovation Valley, Wuhan Economic and Technological Development Zone, Hubei Province

Applicant before: HUBEI ECARX TECHNOLOGY Co.,Ltd.

TA01 Transfer of patent application right
GR01 Patent grant
GR01 Patent grant