CN114860549A - 埋点数据校验方法、装置、设备和存储介质 - Google Patents
埋点数据校验方法、装置、设备和存储介质 Download PDFInfo
- Publication number
- CN114860549A CN114860549A CN202210599292.XA CN202210599292A CN114860549A CN 114860549 A CN114860549 A CN 114860549A CN 202210599292 A CN202210599292 A CN 202210599292A CN 114860549 A CN114860549 A CN 114860549A
- Authority
- CN
- China
- Prior art keywords
- buried point
- point data
- verification
- data
- verified
- 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
- 238000000034 method Methods 0.000 title claims abstract description 76
- 238000012795 verification Methods 0.000 claims abstract description 284
- 230000002159 abnormal effect Effects 0.000 claims abstract description 35
- 238000013524 data verification Methods 0.000 claims description 36
- 238000009933 burial Methods 0.000 claims description 5
- 238000012216 screening Methods 0.000 claims description 4
- 238000000605 extraction Methods 0.000 claims 1
- 238000012360 testing method Methods 0.000 abstract description 10
- 230000008439 repair process Effects 0.000 abstract description 3
- 230000008569 process Effects 0.000 description 19
- 238000004590 computer program Methods 0.000 description 12
- 230000005856 abnormality Effects 0.000 description 10
- 238000004891 communication Methods 0.000 description 9
- 238000012545 processing Methods 0.000 description 7
- 238000010586 diagram Methods 0.000 description 6
- 230000006870 function Effects 0.000 description 6
- 239000000284 extract Substances 0.000 description 4
- 230000003287 optical effect Effects 0.000 description 4
- 230000001960 triggered effect Effects 0.000 description 4
- 238000005516 engineering process Methods 0.000 description 3
- 238000005192 partition Methods 0.000 description 3
- 238000004364 calculation method Methods 0.000 description 2
- 230000003993 interaction Effects 0.000 description 2
- 238000004458 analytical method Methods 0.000 description 1
- 238000013473 artificial intelligence Methods 0.000 description 1
- 230000009286 beneficial effect Effects 0.000 description 1
- 230000010267 cellular communication Effects 0.000 description 1
- 230000001413 cellular effect Effects 0.000 description 1
- 238000012512 characterization method Methods 0.000 description 1
- 238000007405 data analysis Methods 0.000 description 1
- 238000013461 design Methods 0.000 description 1
- 238000001514 detection method Methods 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 230000002452 interceptive effect Effects 0.000 description 1
- 239000004973 liquid crystal related substance Substances 0.000 description 1
- 238000010801 machine learning Methods 0.000 description 1
- 239000013307 optical fiber Substances 0.000 description 1
- 230000002035 prolonged effect Effects 0.000 description 1
- 239000004065 semiconductor Substances 0.000 description 1
- 230000001953 sensory effect Effects 0.000 description 1
- 238000000638 solvent extraction Methods 0.000 description 1
- 238000007619 statistical method Methods 0.000 description 1
- 230000000007 visual effect Effects 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/30—Monitoring
- G06F11/3065—Monitoring arrangements determined by the means or processing involved in reporting the monitored data
- G06F11/3072—Monitoring arrangements determined by the means or processing involved in reporting the monitored data where the reporting involves data filtering, e.g. pattern matching, time or event triggered, adaptive or policy-based reporting
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/30—Monitoring
- G06F11/3089—Monitoring arrangements determined by the means or processing involved in sensing the monitored data, e.g. interfaces, connectors, sensors, probes, agents
- G06F11/3093—Configuration details thereof, e.g. installation, enabling, spatial arrangement of the probes
-
- 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)
- Quality & Reliability (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Geophysics And Detection Of Objects (AREA)
- Management, Administration, Business Operations System, And Electronic Commerce (AREA)
Abstract
本公开涉及计算机技术领域,公开了一种埋点数据校验方法、装置、设备和存储介质。该方法包括:获取待校验埋点数据;确定所述待校验埋点数据对应的参照埋点数据;基于所述参照埋点数据,按照至少两个预设校验类型,对所述待校验埋点数据进行校验,生成每个所述预设校验类型对应的局部校验结果;汇总各所述局部校验结果,生成所述待校验埋点数据的初步校验结果。通过上述技术方案,实现了对待校验埋点数据的全面校验,减少了埋点异常的报告次数,且缩短了埋点的测试和修复周期。
Description
技术领域
本公开涉及计算机技术领域,尤其涉及一种埋点数据校验方法、装置、设备和存储介质。
背景技术
随着互联网技术的发展,各种应用程序发布和更新的频率越来越快。为了保证应用程序质量和用户体验,开发人员会在应用程序中预先设置诸多埋点,以在应用程序运行过程中收集被触发的埋点的相关数据(简称埋点数据),并将该埋点数据上报到服务端。服务端可以根据埋点数据的统计结果判断应用程序的运行情况是否正常以及用户体验是否良好。
为了确保埋点数据分析的正确性,在服务端对埋点数据进行统计分析之前,会先对收集的埋点数据进行校验,以验证收集的埋点数据是否与埋点设计需求一致。
现有技术中,针对一个埋点的埋点数据校验时,如果检测到一个参数的异常或多个参数的同一种异常,就会结束本次对该埋点的校验,并将上述异常上报至服务端。待修复该埋点的上述异常后,再重复上述异常检测过程,以继续检测其他异常问题。这样就会导致针对该埋点的校验不全面,增加埋点异常的报告次数,延长埋点的测试和修复周期。
发明内容
本公开实施例提供了一种埋点数据校验方法、装置、设备和存储介质,以对埋点数据更加全面地校验,从而减少埋点异常的报告次数,缩短埋点的测试和修复周期。
根据本公开的一方面,提供了一种埋点数据校验方法,该方法包括:
获取待校验埋点数据;
确定所述待校验埋点数据对应的参照埋点数据;
基于所述参照埋点数据,按照至少两个预设校验类型,对所述待校验埋点数据进行校验,生成每个所述预设校验类型对应的局部校验结果;
汇总各所述局部校验结果,生成所述待校验埋点数据的初步校验结果。
根据本公开的另一方面,提供了一种埋点数据校验装置,该装置包括:
待校验埋点数据获取模块,用于获取待校验埋点数据;
参照埋点数据确定模块,用于确定所述待校验埋点数据对应的参照埋点数据;
局部校验结果生成模块,用于基于所述参照埋点数据,按照至少两个预设校验类型,分别对所述待校验埋点数据和所述参照埋点数据进行校验,生成每个所述预设校验类型对应的局部校验结果;
初步校验结果生成模块,用于汇总各所述局部校验结果,生成所述待校验埋点数据的初步校验结果。
根据本公开的又一方面,提供了一种电子设备,该电子设备包括:
处理器;以及
存储程序的存储器,
其中,所述程序包括指令,所述指令在由所述处理器执行时使所述处理器执行本公开任意实施例中所述的方法。
根据本公开的又一方面,提供了一种存储有计算机指令的非瞬时计算机可读存储介质,该计算机指令用于使所述计算机执行本公开任意实施例中所述的方法。
本公开实施例中提供的埋点数据校验方法、装置、设备和存储介质,能够获取待校验埋点数据,并确定待校验埋点数据对应的参照埋点数据;以及基于所述参照埋点数据,按照至少两个预设校验类型,对所述待校验埋点数据进行校验,生成每个所述预设校验类型对应的局部校验结果,并汇总各所述局部校验结果,生成所述待校验埋点数据的初步校验结果;实现了对待校验埋点数据的全面校验,避免了每次仅校验出一部分埋点异常便上报服务端的问题,减少了埋点异常的报告次数,且缩短了埋点的测试和修复周期。
附图说明
此处的附图被并入说明书中并构成本说明书的一部分,示出了符合本公开的实施例,并与说明书一起用于解释本公开的原理。
为了更清楚地说明本公开实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,对于本领域普通技术人员而言,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。
图1是本公开实施例提供的一种埋点数据校验方法的流程图;
图2是本公开实施例提供的一种基于枚举关键字段校验类型和枚举值校验类型进行埋点数据校验的方法流程图;
图3是本公开实施例提供的另一种埋点数据校验方法的流程图;
图4是本公开实施例提供的又一种埋点数据校验方法的流程图;
图5是本公开实施例提供的一种埋点数据校验装置的结构示意图;
图6是本公开实施例提供的一种电子设备的结构示意图。
具体实施方式
下面将参照附图更详细地描述本公开的实施例。虽然附图中显示了本公开的某些实施例,然而应当理解的是,本公开可以通过各种形式来实现,而且不应该被解释为限于这里阐述的实施例,相反提供这些实施例是为了更加透彻和完整地理解本公开。应当理解的是,本公开的附图及实施例仅用于示例性作用,并非用于限制本公开的保护范围。
应当理解,本公开的方法实施方式中记载的各个步骤可以按照不同的顺序执行,和/或并行执行。此外,方法实施方式可以包括附加的步骤和/或省略执行示出的步骤。本公开的范围在此方面不受限制。
本文使用的术语“包括”及其变形是开放性包括,即“包括但不限于”。术语“基于”是“至少部分地基于”。术语“一个实施例”表示“至少一个实施例”;术语“另一实施例”表示“至少一个另外的实施例”;术语“一些实施例”表示“至少一些实施例”。其他术语的相关定义将在下文描述中给出。需要注意,本公开中提及的“第一”、“第二”等概念仅用于对不同的装置、模块或单元进行区分,并非用于限定这些装置、模块或单元所执行的功能的顺序或者相互依存关系。
需要注意,本公开中提及的“一个”、“多个”的修饰是示意性而非限制性的,本领域技术人员应当理解,除非在上下文另有明确指出,否则应该理解为“一个或多个”。
本公开实施方式中的多个装置之间所交互的消息或者信息的名称仅用于说明性的目的,而并不是用于对这些消息或信息的范围进行限制。
本公开实施例提供的埋点数据校验方法,主要适用于对应用程序中设置的埋点对应的埋点数据进行准确性校验的情况。本公开实施例提供的埋点数据校验方法可以由埋点数据校验装置来执行,该装置可以由软件和/或硬件的方式实现,该装置可以集成在服务端对应的电子设备中,例如笔记本电脑、台式电脑或服务器等。
图1是本公开实施例提供的一种埋点数据校验方法的流程图。参见图1,该埋点数据校验方法具体包括:
S110、获取待校验埋点数据。
其中,待校验埋点数据是指需要校验的埋点数据,其是应用程序在正式运行或测试运行过程中收集的真实的埋点数据。埋点数据是指应用程序中设置的埋点被触发后收集的相关数据,例如可以是页面点击率、页面浏览时长等等。
具体地,电子设备从网络端、本地存储介质或外部存储介质中获取待校验埋点数据。
在一些实施例中,S110包括:基于查询关键词,从埋点数据库中筛选得到待校验埋点数据,且待校验埋点数据按行记录在本地存储文件中。
其中,查询关键词是从埋点数据库中进行数据查询的关键词,其与埋点数据库提供的至少部分查询维度相匹配。本公开实施例中,查询关键词包括查询起始时间、应用程序标识、终端类型标识、用户标识和自定义查询标识中的至少一个。查询起始时间是数据查询的开始时间,其小于当前***时间。应用程序标识是用于区分应用程序的标识,例如可以是应用程序的全称、简称、包名等等。终端类型标识是指应用程序所在的终端的类型的标识,例如可以是终端所搭载的操作***的标识,如iOS***标识、安卓***标识、PC标识等等。用户标识是用于区分不同用户的标识,例如可以是用户名、用户注册的其他信息、对用户的编码等。自定义查询标识是指用户自定义的其他查询标识。
具体地,考虑到安装应用程序的终端向服务端上报数据时,服务端中的日志中心中便会记录有该终端的相关的埋点信息。所以,为了减小对数据抓取工具和网络的依赖,以及避免埋点数据的入库风险,本公开实施例中可以从服务端的日志中心中直接拉取埋点数据,并将其存储在埋点数据库中。
当需要进行埋点数据校验时,电子设备可以根据查询关键词,从埋点数据库中查询获得待校验埋点数据。该查询关键词可以是预先设置的,也可以是用户根据交互界面输入的。例如,查询关键词可以是查询起始时间和用户标识,那么电子设备可以从埋点数据库中查询出该用户标识对应的用户在查询起始时间到当前***时间之间的所有的埋点数据。
从埋点数据库中获得的埋点数据可能是很多条数据。为了埋点数据校验中可以精准定位到有异常的埋点数据,以对该有异常的埋点数据进行详细分析,本实施例中可以将查询获得的埋点数据逐行记录在本地存储文件中,即本地存储文件中的一行数据便为一条埋点数据。埋点数据校验时,每次从本地存储文件中读取一行埋点数据,作为待校验埋点数据。
上述过程中,电子设备从日志中心中读取数据并存入埋点数据库时,首先,将数据搜索引擎Elasticsearch(ES)的地址修改为要收集的埋点数据对应的地址。例如,要对测试环境下的应用程序进行埋点数据校验时,将ES的地址修改为测试环境对应的地址;要对正式环境下的应用程序进行埋点数据校验时,便将ES的地址修改为正式环境对应的地址;这样才可以拉取到正确的数据。然后,为了避免数据混乱,在ES中存储数据时,可按照终端类型做数据分区,并将终端类型标识作为不同终端类型的埋点数据的查询维度。例如,在ES中设置终端类型iOS、安卓和PC共三个数据分区,并为这三个数据分区分别设置对应的终端类型标识111、222和333。再然后,电子设备可从日志中心中拉取每条埋点数据,并将其按照终端类型标识存储至埋点数据库对应的数据分区中。另外,为了提供更加精准的数据查询功能,可以为埋点数据库配置更多的查询维度,例如可以是数据获取时间、应用程序标识、终端类型标识、用户标识和其他的至少一个自定义查询标识等。这些查询维度可以设置在配置文件中,以供数据查询过程中进行自定义查询设置。
S120、确定待校验埋点数据对应的参照埋点数据。
其中,参照埋点数据是从多个预设埋点数据中筛选出来,与待校验埋点数据匹配的预设埋点数据。预设埋点数据是根据埋点需求而生成的理想的、正确的埋点数据。
具体地,应用程序中的各埋点是根据埋点需求而设置的,所以每个埋点也可根据埋点需求生成对应的预设埋点数据,以对收集的真实的埋点数据进行校验。所以,电子设备在获取待校验埋点数据之后,便可从诸多预设埋点数据中筛选出与待校验埋点数据匹配的预设埋点数据,即确定待校验埋点数据对应的参照埋点数据。例如,电子设备可通过待校验埋点数据中携带的埋点标识与各预设埋点数据中携带的埋点标识的匹配来筛选埋点数据。这里的埋点标识是可以唯一表征一个埋点的信息,例如可以是预先设置的埋点编号。
S130、基于参照埋点数据,按照至少两个预设校验类型,对待校验埋点数据进行校验,生成每个预设校验类型对应的局部校验结果。
其中,预设校验类型是预先设置的、埋点校验中的参数异常的类别。各预设校验类型涵盖埋点校验过程的各种参数异常。局部校验结果是对待校验埋点数据进行一部分参数异常校验所得的结果。
具体地,相关技术中的埋点数据校验,往往是串行执行方式,并且其在校验出一类参数异常后就会结束该埋点的校验流程,致使埋点数据的校验不完整,进而导致埋点校验过程冗长。基于此,本公开实施例中,将埋点数据中可能存在的各种参数异常进行分类,得到至少两个预设校验类型。然后,针对任一预设校验类型,以参照埋点数据为基准,对待校验埋点数据进行校验,以验证待校验埋点数据是否存在该预设校验类型的参数异常,并将该校验过程所得的校验结果作为该预设校验类型对应的局部校验结果。
在一些实施例中,预设校验类型包括公共参数校验类型、非枚举关键字校验类型、枚举关键字校验类型或枚举值校验类型。
其中,公共参数校验类型是对埋点数据中的公共参数进行异常校验的类型,公共参数是埋点需求中设置的参数。非枚举关键字校验类型是针对非枚举数据类型的关键字段进行异常校验的类型,非枚举关键字也是埋点需求中设置的参数。枚举关键字校验类型是针对枚举数据类型的关键字段(即枚举关键字段)进行异常校验的类型,枚举关键字是埋点需求中设置的参数。枚举值校验类型是针对枚举关键字段的字段值进行异常校验的类型,每个枚举关键字段的枚举值也可在埋点需求中设置。
具体地,按照埋点数据中涉及的参数的数据类型,可以将埋点校验过程中的参数异常分类为公共参数校验类型、非枚举关键字校验类型、枚举关键字校验类型和枚举值校验类型,那么S130中的校验过程便是按照该四个预设校验类型,对待校验埋点数据进行校验。
在上述实施例的基础上,为了进一步提高埋点数据校验效率,本实施例中可解耦各预设校验类型的校验过程,并将其设置为并发执行方式或并行执行方式。即S130可实现为:按照各预设校验类型,同时且独立地对待校验埋点数据进行如下步骤A~步骤D的校验。
步骤A、以参照埋点数据为校验基准,按照公共参数校验类型,对待校验埋点数据进行公共参数的异常校验,生成公共参数校验类型对应的局部校验结果。
具体地,从参照埋点数据中确定出一个未校验过的公共参数,并从待校验埋点数据中提取该公共参数,以判断待校验埋点数据中是否存在该公共参数。如果能够提取到该公共参数,说明待校验埋点数据中存在该公共参数,该公共参数校验通过;如果不能够提取到该公共参数,说明待校验埋点数据中不存在该公共参数,该公共参数校验异常,此时需要记录缺失该公共参数。
然后,从参数埋点数据中继续确定一个未校验过的公共参数,并重复上述过程,直至参照埋点数据中的各公共参数全部校验完毕。此时,所有记录的“缺失公共参数”,便作为公共参数校验类型对应的局部校验结果。
步骤B、以参照埋点数据为校验基准,按照非枚举关键字校验类型,对待校验埋点数据进行非枚举参数的异常校验,生成非枚举关键字校验类型对应的局部校验结果。
具体地,从参照埋点数据中确定出一个未校验过的非枚举关键字段,并从待校验埋点数据中提取该非枚举关键字段,以判断待校验埋点数据中是否存在该非枚举关键字段。如果能够提取到该非枚举关键字段,说明待校验埋点数据中存在该非枚举关键字段,该非枚举关键字段校验通过;如果不能够提取到该非枚举关键字段,说明待校验埋点数据中不存在该非枚举关键字段,该非枚举关键字段校验异常,此时需要记录缺失该非枚举关键字段。
然后,从参数埋点数据中继续确定一个未校验过的非枚举关键字段,并重复上述过程,直至参照埋点数据中的各非枚举关键字段全部校验完毕。此时,所有记录的“缺失非枚举关键字段”,便作为非枚举关键字校验类型对应的局部校验结果。
步骤C、以参照埋点数据为校验基准,按照枚举关键字校验类型,对待校验埋点数据进行枚举参数的异常校验,生成枚举关键字校验类型对应的局部校验结果。
具体地,参见图2,电子设备从参照埋点数据中确定出一个未校验过的枚举关键字段X,并从待校验埋点数据中提取该枚举关键字段X,以判断待校验埋点数据中是否存在该枚举关键字段X。如果不能够提取到该枚举关键字段X,说明待校验埋点数据中不存在该枚举关键字段X,该枚举关键字段X校验异常,此时需要记录缺失该枚举关键字段X。如果能够提取到该枚举关键字段X,说明待校验埋点数据中存在该枚举关键字段X,该枚举关键字段X校验通过。
然后,判断参照埋点数据中的各枚举关键字段是否全部校验完毕。若否,则从参数埋点数据中继续确定一个未校验过的枚举关键字段Y,并重复上述过程,直至参照埋点数据中的各枚举关键字段全部校验完毕。此时,可得到“缺失枚举关键字段”的校验结果,作为枚举关键字校验类型对应的局部校验结果。
步骤D、以参照埋点数据为校验基准,按照枚举值校验类型,对待校验埋点数据进行枚举参数的枚举值的异常校验,生成枚举值校验类型对应的局部校验结果。
具体地,参见图2,电子设备从参照埋点数据中确定出一个未校验过枚举值的枚举关键字段X,并从待校验埋点数据中提取该枚举关键字段X对应的枚举值X1′,并将该枚举值X1′与参照埋点数据中该枚举关键字段X对应的各枚举值(即参照枚举值,如X1、X2、X3)进行匹配,以判断该枚举值X1′是否属于该枚举关键字段X的合法枚举值。如果有一个枚举值匹配成功,说明该枚举值X1′为合法枚举值,并记录该枚举值X1′为枚举关键字段X出现过的合法枚举值。如果均匹配失败,说明该枚举值X1′为非法枚举值,并记录该枚举值X1′为枚举关键字段X的异常枚举值。例如,枚举关键字段X的参照枚举值只有[1,2,3],但X1′为[4],则将X1′记录在“X的异常枚举值”的列表中;若X1′属于[1,2,3]中的一个,则将其记录到“X出现过的枚举值”的列表中。
然后,从参数埋点数据中继续确定一个未校验过枚举值的枚举关键字段Y,并重复上述枚举值的校验过程,直至参照埋点数据中的各枚举关键字段的枚举值全部校验完毕。此时,可得到“枚举关键字段的异常枚举值”和“枚举关键字段的出现过的枚举值”的校验结果,作为枚举值校验类型对应的局部校验结果。
S140、汇总各局部校验结果,生成待校验埋点数据的初步校验结果。
其中,初步校验结果是指对待校验埋点数据进行各种埋点异常的全面校验后直接生成的校验结果。
具体地,按照S130的操作,对待校验埋点数据进行每个预设校验类型的埋点异常校验后,可得到每个预设校验类型对应的局部校验结果。因各预设校验类型涵盖了所有的埋点异常,所以,在所有的预设校验类型均校验完毕后,便完成了对待校验埋点数据的全面校验。基于此,可汇总各局部校验结果,得到待校验埋点数据对应的初步校验结果。
本公开上述各实施例提供的埋点数据校验方法,通过能够获取待校验埋点数据,并确定待校验埋点数据对应的参照埋点数据;以及基于参照埋点数据,按照至少两个预设校验类型,对待校验埋点数据进行校验,生成每个预设校验类型对应的局部校验结果;并汇总各局部校验结果,生成待校验埋点数据的初步校验结果;实现了对待校验埋点数据的全面校验,避免了每次仅校验出一部分埋点异常便上报服务端的问题,减少了埋点异常的报告次数,且缩短了埋点的测试和修复周期。
在一些实施例中,在S120之后,该埋点数据校验方法还包括:若确定参照埋点数据对应的校验标识为未校验标识或校验正常标识,则触发执行S130。
其中,校验标识是用于表征参照埋点数据的校验状态的信息,其可以是未校验标识、校验正常标识或校验异常标识。未校验标识用于表征还未进行埋点数据校验的状态。校验正常标识用于表征已经进行过埋点数据校验,且校验结果是通过的状态。校验异常标识用于表征已经进行过埋点数据校验,但校验结果是异常的状态。
具体地,电子设备在确定参照埋点数据后,可以先根据参照埋点数据对应的校验标识来判断该参照埋点数据是否需要进行校验。如果校验标识为校验异常标识,说明该参照埋点数据已经校验完毕,且存在数据异常,则无需再执行S130。如果校验标识为未校验标识,说明该参照埋点数据需要进行校验,则执行S130。如果校验标识为校验通过标识,说明该参照埋点数据曾经校验过,且校验结果是无异常。此时,为了防止相同的埋点在不同时机触发时产生异常,以及为了记录所有出现过的枚举值,以便后续获取到未出现的枚举值,本实施例中也会对该参照埋点数据继续进行校验,即执行S130。
图3是本公开实施例提供的另一种埋点数据校验方法的流程图。该埋点数据校验方法对“确定待校验埋点数据对应的参照埋点数据”进行了优化。在此基础上,还可以增加“生成目标校验结果”的相关步骤。其中与上述各实施例相同或相应的术语的解释在此不再赘述。参见图3,该埋点数据校验方法包括:
S310、获取待校验埋点数据。
S320、基于第一关键字段,分别对待校验埋点数据和各预设埋点数据进行字段值提取,确定待校验埋点数据的第一埋点标识和各预设埋点数据的第二埋点标识。
其中,第一关键字段是预先设置的字段,其根据埋点需求来设置,例如可以是应用程序中设置的各埋点的公共字段。第一关键字段可以是一个关键字段,也可以是多个关键字段。例如,第一关键字段可以是关键字段A和关键字段B。第一埋点标识和第二埋点标识分别是待校验埋点数据、预设埋点数据中携带的埋点标识。预设埋点数据为基于埋点需求而设置的埋点数据。
具体地,相关技术中根据埋点数据中携带的埋点标识进行待校验埋点数据和各预设埋点数据的匹配。但是,如果埋点未设置能够唯一表征该埋点的埋点标识,那么就无法进行预设埋点数据的匹配,进而导致无法进行埋点数据的校验。基于此,为了提高埋点数据匹配成功率,进而确保埋点校验的正确性和完整性,本公开实施例中通过提取埋点数据中包含的多个字段的字段值来组合成埋点标识。
具体实施时,电子设备可从待校验埋点数据中提取第一关键字段的字段值,来生成第一埋点标识。同样地,电子设备可从每个预设埋点数据中提取第一关键字段的字段值,来生成对应的第二埋点标识。
在一些实施例中,S320包括如下步骤E~步骤G:
步骤E、基于目标埋点数据的参数结构,确定第一关键字段的字段值获取路径。
其中,目标埋点数据是需要生成埋点标识的埋点数据,其可以是待校验埋点数据或预设埋点数据。字段值获取路径是从埋点数据中获取字段值的数据访问路径,其由埋点数据的参数结构(或称数据结构)和第一关键字段在其中的位置来确定。该参数结构可根据应用程序类型、终端类型等对应的数据结构来确定。
具体地,因不同的应用程序类型、终端类型等的差异,目标埋点数据可能设置有不同的参数结构,那么,第一关键字段在目标埋点数据中的位置也可能不同。所以,电子设备可先确定目标埋点数据的参数结构,然后根据第一关键字段在该参数结构中的位置,确定出字段值获取路径。例如,目标埋点数据的参数结构为10层嵌套的数据结构,而第一关键字段在第6层嵌套结构中,那么字段值获取路径便为从目标埋点数据的第一层嵌套结构开始逐层深入直至第6层嵌套结构的数据获取路径。
步骤F、基于字段值获取路径,从目标埋点数据中提取第一字段值。
具体地,电子设备根据字段值获取路径,定位至目标埋点数据中的相应位置,并从该位置中读取数据,获得第一关键字段的字段值,即第一字段值。例如,第一关键字段为关键字段A和关键字段B,那么可得到第一字段值A1和B1。
如果电子设备从定位的位置中未检测到第一关键字段,说明该目标埋点数据中不存在第一关键字段,那么该目标埋点数据便不属于需要校验的埋点数据,则剔除该目标埋点数据,并继续处理下一条标埋点数据。
步骤G、基于第一字段值,确定目标埋点数据的目标埋点标识。
具体地,电子设备可将第一字段值确定为目标埋点数据的目标埋点标识。例如,第一字段值为一个时,可将其直接确定为目标埋点标识;第一字段值为多个时,可将该多个第一字段值的组合确定为目标埋点标识。例如,可将“A1|B1”的组合确定为目标埋点标识。其中,在目标埋点数据为待校验埋点数据的情况下,目标埋点标识为第一埋点标识。在目标埋点标识为预设埋点数据的情况下,目标埋点标识为第二埋点标识。
在一些实施例中,步骤G包括:若确定预设配置文件中存在第一字段值,则从预设配置文件中确定目标埋点数据对应的第二关键字段;基于第二关键字段,从目标埋点数据中提取第二字段值;将第一字段值和第二字段值的组合,确定为目标埋点标识。
其中,预设配置文件是存储预先设置的、用于确定唯一的埋点标识的相关配置性信息的文件。第二关键字段是另外的预先设置的字段,其也可根据埋点需求来设置。第二关键字段的设置要求是第一关键字段的第一字段值和第二关键字段的第二字段值的组合能够唯一标识一个埋点。基于此,第二关键字段可根据埋点对应的个性化字段来设置,其可以是一个关键字段,也可以是多个关键字段。例如,第二关键字段可以是关键字段C和关键字段D。
具体地,鉴于第一关键字段是根据公共字段而设置的,所以存在第一字段值无法唯一表征一个埋点的情况。基于此,本公开实施例中设置了一个预设配置文件,并在该预设配置文件中存储了无法利用第一字段值来唯一表征埋点的各第一字段值,并且在该预设配置文件中还存储了对应的至少一个附加的关键字段,即第二关键字段。例如,预设配置文件中可以“A1|B1:[第二关键字段C、第二关键字段D]”的形式存储第一字段值及其对应的第二关键字段。
为了进一步提高埋点标识的准确性,电子设备在获取第一字段值之后,将第一字段值与预设配置文件中存储的信息进行匹配。如果匹配结果是预设配置文件中存在该第一字段值,说明该第一字段值无法唯一表征一个埋点。此时,电子设备根据第一字段值从预设配置文件中获取其对应的第二关键字段。然后,根据目标埋点数据的参数结构确定第二关键字段对应的字段值获取路径,并按照该字段值获取路径定位第二关键字段所在位置,且从该位置中读取第二关键字段对应的数据,得到第二字段值,如得到C1和D1。之后,电子设备将第一字段值和第二字段值的组合,如“A1|B1|C1|D1”,作为目标埋点标识。这样便可得到唯一表征埋点的目标埋点标识,提高埋点标识的准确性,从而提高参照埋点数据的准确性,进而提高埋点数据校验的准确性。
在另一些实施例中,步骤G还包括:若确定预设配置文件中不存在第一字段值,则将第一字段值确定为目标埋点标识。
具体地,基于上述说明,电子设备在获取第一字段值之后,如果确定第一字段值与预设配置文件中存储的信息进行匹配的结果是匹配失败,即预设配置文件中不存在该第一字段值,说明该第一字段值可以唯一表征一个埋点。那么,电子设备可直接将第一字段值确定为目标埋点标识。
S330、将第一埋点标识与各第二埋点标识进行匹配,并将匹配成功的第二埋点标识对应的预设埋点数据确定为参照埋点数据。
具体地,电子设备将第一埋点标识和每个第二埋点标识进行匹配。如果均未匹配成功,说明该待校验埋点数据没有对应的预设埋点数据,结束对其校验流程。如果有一个匹配成功,则将匹配成功的第二埋点标识对应的预设埋点数据确定参照埋点数据。
鉴于上述关于第一埋点标识和第二埋点标识的说明,可知第一埋点标识和第二埋点标识均具有唯一性,所以不存在两个以及上匹配成功的情况。
S340、基于参照埋点数据,按照至少两个预设校验类型,对待校验埋点数据进行校验,生成每个预设校验类型对应的局部校验结果。
S350、汇总各局部校验结果,生成待校验埋点数据的初步校验结果。
S360、确定参照埋点数据对应的多个待校验埋点数据的初步校验结果,并汇总各初步校验结果中的每个枚举关键字的出现过的枚举值。
具体地,相关技术中只检测待校验埋点数据中出现过的枚举值是否异常,若无异常,则会给出该埋点校验通过的校验结果。但是,对于参照埋点数据对应的多条待校验埋点数据中均未出现过的枚举值,无法确保其是否存在异常,那么相关技术中给出的校验结果便存在遗漏和不准确的问题。基于此,本公开实施例在对待校验埋点数据进行分类校验之后,可以进一步汇总初步校验结果中“出现过的枚举值”,以得到参照埋点数据对应的遗漏的枚举值(即缺失枚举值),避免枚举值数量的异常。
具体实施时,电子设备按照上述各实施例的说明,获得参照埋点数据对应的多条待校验埋点数据,并按照各预设校验类型逐条地对各待校验埋点数据进行全面校验,得到对应的初步校验结果。然后,按照枚举值校验类型汇总各初步校验结果。汇总后的初步校验结果中包括参照埋点数据中包含的每个枚举关键字段的出现过的枚举值,例如可以是以“X:[1,2]”的形式记录。
S370、针对每个枚举关键字,比较枚举关键字对应的汇总后的出现过的枚举值和参照埋点数据包含的枚举关键字的参照枚举值,确定枚举关键字的缺失枚举值。
具体地,电子设备对于参照埋点数据中包含的每个枚举关键字段均执行:匹配该枚举关键字段对应的汇总后的出现过的枚举值和参照埋点数据中包含的该枚举关键字段的各参照枚举值,并将未匹配到出现过的枚举值的参照枚举值确定为该枚举关键字段的缺失枚举值。
例如,对于枚举关键字段X的出现过的枚举值示例“X:[1,2]”,如果该枚举关键字段X的各参照枚举值为[1,2,3,4],那么可得到该枚举关键字段X的缺失枚举值“X:[3,4]”。
S380、按照各预设校验类型汇总各初步校验结果,并组合汇总后的初步校验结果和各枚举关键字对应的缺失枚举值,生成目标校验结果。
具体地,电子设备经过上述处理,可得到参照埋点数据对应的各待校验埋点数据的初步校验结果、以及该参照埋点数据对应的各枚举关键字段的缺失枚举值。此时,电子设备可将这些结果进行汇总,生成该参照埋点数据对应的最终的校验结果,即目标校验结果。例如,对应四个预设校验类型的示例,电子设备可得到包含“缺失公共参数”、“缺失非枚举关键字段”、“缺失枚举关键字段”、“枚举关键字段的异常枚举值”和“枚举关键字段的缺失枚举值”共五个类别的目标校验结果。
本公开实施例的上述技术方案,基于第一关键字段确定待校验埋点数据的第一埋点标识和各预设埋点数据的第二埋点标识;并将第一埋点标识与各第二埋点标识进行匹配,且将匹配成功的第二埋点标识对应的预设埋点数据确定为参照埋点数据;实现了利用埋点数据中的某些关键字段来构建唯一表征埋点的埋点标识,提高了埋点标识的准确性,从而进一步提高参照埋点数据的准确性,进而进一步提高埋点数据校验的准确性。另外,上述技术方案确定参照埋点数据对应的多个待校验埋点数据的初步校验结果,并汇总各初步校验结果中的每个枚举关键字的出现过的枚举值;针对每个枚举关键字,比较枚举关键字对应的汇总后的出现过的枚举值和参照埋点数据包含的枚举关键字的参照枚举值,确定枚举关键字的缺失枚举值;按照各预设校验类型汇总各初步校验结果,并组合汇总后的初步校验结果和各枚举关键字对应的缺失枚举值,生成目标校验结果;实现了初始校验结果的汇总报告以及未出现的枚举值的统计,从而进一步提供更加全面且准确的校验结果,进而进一步减少同一埋点的校验结果的报告次数,缩短埋点的测试和修复周期。
图4是本公开实施例提供的又一种埋点数据校验方法。其中与上述各实施例相同或相应的术语的解释在此不再赘述。参见图4,该埋点数据校验方法包括:
S401、基于查询关键词,从埋点数据库中筛选得到待校验埋点数据。
S402、基于待校验埋点数据(或预设埋点数据)的参数结构,确定第一关键字段的字段值获取路径。
S403、判断字段值获取路径中是否存在第一关键字段。
S404、若不存在第一关键字段,则剔除该待校验埋点数据(或预设埋点数据)。
S405、若存在第一关键字段,则基于字段值获取路径,从待校验埋点数据(或预设埋点数据)中提取第一字段值。
S406、确定预设配置文件中是否存在第一字段值。之后执行S407或S410。
S407、若确定预设配置文件中存在第一字段值,则从预设配置文件中确定待校验埋点数据(或预设埋点数据)对应的第二关键字段。
S408、基于第二关键字段,从待校验埋点数据(或预设埋点数据)中提取第二字段值。
S409、将第一字段值和第二字段值的组合,确定为待校验埋点数据对应的第一埋点标识(或预设埋点数据对应的第二埋点标识)。
S410、若确定预设配置文件中不存在第一字段值,则将第一字段值确定为待校验埋点数据对应的第一埋点标识(或预设埋点数据对应的第二埋点标识)。
S411、将第一埋点标识与各第二埋点标识进行匹配,并将匹配成功的第二埋点标识对应的预设埋点数据确定为参照埋点数据。
S412、确定参照埋点数据对应的校验标识是否为未校验标识或校验正常标识。
S413、若校验标识不是未校验标识或校验正常标识,则结束待校验埋点数据的校验流程。
S414、若校验标识为未校验标识或校验正常标识,则基于参照埋点数据,按照公共参数校验类型、非枚举关键字校验类型、枚举关键字校验类型和枚举值校验类型,同时且独立地对待校验埋点数据进行校验,生成每个预设校验类型对应的局部校验结果,并汇总各局部校验结果,生成待校验埋点数据的初步校验结果。
S415、确定参照埋点数据对应的各待校验埋点数据是否全部校验完成。
S416、若未全部校验完成,则从各待校验埋点数据中提取一个未校验过的待校验埋点数据,并重复执行S401至S415。
S417、若全部校验完成,则确定参照埋点数据对应的多个待校验埋点数据的初步校验结果,并汇总各初步校验结果中的每个枚举关键字的出现过的枚举值,且针对每个枚举关键字,比较枚举关键字对应的汇总后的出现过的枚举值和参照埋点数据包含的枚举关键字的参照枚举值,确定枚举关键字的缺失枚举值。
S418、按照各预设校验类型汇总各初步校验结果,并组合汇总后的初步校验结果和各枚举关键字对应的缺失枚举值,生成目标校验结果。
图5是本公开实施例提供的一种埋点数据校验装置的结构示意图。参见图5,该埋点数据校验装置500具体包括:
待校验埋点数据获取模块510,用于获取待校验埋点数据;
参照埋点数据确定模块520,用于确定待校验埋点数据对应的参照埋点数据;
局部校验结果生成模块530,用于基于参照埋点数据,按照至少两个预设校验类型,分别对待校验埋点数据和参照埋点数据进行校验,生成每个预设校验类型对应的局部校验结果;
初步校验结果生成模块540,用于汇总各局部校验结果,生成待校验埋点数据的初步校验结果。
本公开实施例提供的上述埋点数据校验装置,通过能够获取待校验埋点数据,并确定待校验埋点数据对应的参照埋点数据;以及基于参照埋点数据,按照至少两个预设校验类型,对待校验埋点数据进行校验,生成每个预设校验类型对应的局部校验结果,并汇总各局部校验结果,生成待校验埋点数据的初步校验结果;实现了对待校验埋点数据的全面校验,避免了每次仅校验出一部分埋点异常便上报服务端的问题,减少了埋点异常的报告次数,且缩短了埋点的测试和修复周期。
在一些实施例中,参照埋点数据确定模块520包括:
埋点标识确定子模块,用于基于第一关键字段,分别对待校验埋点数据和各预设埋点数据进行字段值提取,确定待校验埋点数据的第一埋点标识和各预设埋点数据的第二埋点标识;其中,预设埋点数据为基于埋点需求而设置的埋点数据;
参照埋点数据确定子模块,用于将第一埋点标识与各第二埋点标识进行匹配,并将匹配成功的第二埋点标识对应的预设埋点数据确定为参照埋点数据。
在一些实施例中,埋点标识确定子模块具体用于:
基于目标埋点数据的参数结构,确定第一关键字段的字段值获取路径;其中,目标埋点数据为待校验埋点数据或预设埋点数据;
基于字段值获取路径,从目标埋点数据中提取第一字段值;
基于第一字段值,确定目标埋点数据的目标埋点标识;其中,在目标埋点数据为待校验埋点数据的情况下,目标埋点标识为第一埋点标识;在目标埋点标识为预设埋点数据的情况下,目标埋点标识为第二埋点标识。
进一步地,埋点标识确定子模块具体用于:
若确定预设配置文件中存在第一字段值,则从预设配置文件中确定目标埋点数据对应的第二关键字段;
基于第二关键字段,从目标埋点数据中提取第二字段值;
将第一字段值和第二字段值的组合,确定为目标埋点标识。
可替代地,埋点标识确定子模块具体用于:
若确定预设配置文件中不存在第一字段值,则将第一字段值确定为目标埋点标识。
在一些实施例中,预设校验类型包括公共参数校验类型、非枚举关键字校验类型、枚举关键字校验类型或枚举值校验类型;
相应地,局部校验结果生成模块530具体用于:
按照各预设校验类型,同时且独立地对待校验埋点数据进行如下校验:
以参照埋点数据为校验基准,按照公共参数校验类型,对待校验埋点数据进行公共参数的异常校验,生成公共参数校验类型对应的局部校验结果;
以参照埋点数据为校验基准,按照非枚举关键字校验类型,对待校验埋点数据进行非枚举参数的异常校验,生成非枚举关键字校验类型对应的局部校验结果;
以参照埋点数据为校验基准,按照枚举关键字校验类型,对待校验埋点数据进行枚举参数的异常校验,生成枚举关键字校验类型对应的局部校验结果;
以参照埋点数据为校验基准,按照枚举值校验类型,对待校验埋点数据进行枚举参数的枚举值的异常校验,生成枚举值校验类型对应的局部校验结果。
在一些实施例中,该埋点数据校验装置500还包括目标校验结果生成模块,用于:
在预设校验类型包括枚举值校验类型的情况下,在汇总各局部校验结果,生成待校验埋点数据的初步校验结果之后,确定参照埋点数据对应的多个待校验埋点数据的初步校验结果,并汇总各初步校验结果中的每个枚举关键字的出现过的枚举值;
针对每个枚举关键字,比较枚举关键字对应的汇总后的出现过的枚举值和参照埋点数据包含的枚举关键字的参照枚举值,确定枚举关键字的缺失枚举值;
按照各预设校验类型汇总各初步校验结果,并组合汇总后的初步校验结果和各枚举关键字对应的缺失枚举值,生成目标校验结果。
在一些实施例中,该埋点数据校验装置500还包括触发执行模块,用于:
在确定待校验埋点数据对应的参照埋点数据之后,若确定参照埋点数据对应的校验标识为未校验标识或校验正常标识,则触发执行基于参照埋点数据,按照至少两个预设校验类型,对待校验埋点数据进行校验,生成每个预设校验类型对应的局部校验结果的步骤。
在一些实施例中,待校验埋点数据获取模块510具体用于:
基于查询关键词,从埋点数据库中筛选得到待校验埋点数据,且待校验埋点数据按行记录在本地存储文件中;
其中,查询关键词包括查询起始时间、应用程序标识、终端类型标识、用户标识和自定义查询标识中的至少一个。
本公开实施例所提供的埋点数据校验装置可执行本公开任意实施例所提供的埋点数据校验方法,具备执行方法相应的功能模块和有益效果。
值得注意的是,上述埋点数据校验装置的实施例中,所包括的各个模块和子模块只是按照功能逻辑进行划分的,但并不局限于上述的划分,只要能够实现相应的功能即可;另外,各功能模块/子模块的具体名称也只是为了便于相互区分,并不用于限制本公开的保护范围。
本公开示例性实施例还提供一种电子设备,包括:至少一个处理器;以及与至少一个处理器通信连接的存储器。该存储器存储有能够被至少一个处理器执行的计算机程序,该计算机程序在被至少一个处理器执行时用于使电子设备执行本公开任意实施例所说明的埋点数据校验方法。
本公开示例性实施例还提供一种存储有计算机程序的非瞬时计算机可读存储介质,其中,计算机程序在被计算机的处理器执行时用于使计算机执行本公开任意实施例所说明的埋点数据校验方法。
本公开示例性实施例还提供一种计算机程序产品,包括计算机程序,其中,计算机程序在被计算机的处理器执行时用于使计算机执行本公开任意实施例所说明的埋点数据校验方法。
参考图6,现将描述可以作为本公开的服务器或客户端的电子设备600的结构示意图,其是可以应用于本公开的各方面的硬件设备的示例。电子设备旨在表示各种形式的数字电子的计算机设备,诸如,膝上型计算机、台式计算机、工作台、个人数字助理、服务器、刀片式服务器、大型计算机、和其它适合的计算机。电子设备还可以表示各种形式的移动装置,诸如,个人数字处理、蜂窝电话、智能电话、可穿戴设备和其它类似的计算装置。本文所示的部件、它们的连接和关系、以及它们的功能仅仅作为示例,并且不意在限制本文中描述的和/或者要求的本公开的实现。
如图6所示,电子设备600包括计算单元601,其可以根据存储在只读存储器(ROM)602中的计算机程序或者从存储单元608加载到随机访问存储器(RAM)603中的计算机程序,来执行各种适当的动作和处理。在RAM 603中,还可存储设备600操作所需的各种程序和数据。计算单元601、ROM 602以及RAM 603通过总线604彼此相连。输入/输出(I/O)接口605也连接至总线604。
电子设备600中的多个部件连接至I/O接口605,包括:输入单元606、输出单元607、存储单元608以及通信单元609。输入单元606可以是能向电子设备600输入信息的任何类型的设备,输入单元606可以接收输入的数字或字符信息,以及产生与电子设备的用户设置和/或功能控制有关的键信号输入。输出单元607可以是能呈现信息的任何类型的设备,并且可以包括但不限于显示器、扬声器、视频/音频输出终端、振动器和/或打印机。存储单元608可以包括但不限于磁盘、光盘。通信单元609允许电子设备600通过诸如因特网的计算机网络和/或各种电信网络与其他设备交换信息/数据,并且可以包括但不限于调制解调器、网卡、红外通信设备、无线通信收发机和/或芯片组,例如蓝牙TM设备、WiFi设备、WiMax设备、蜂窝通信设备和/或类似物。
计算单元601可以是各种具有处理和计算能力的通用和/或专用处理组件。计算单元601的一些示例包括但不限于中央处理单元(CPU)、图形处理单元(GPU)、各种专用的人工智能(AI)计算芯片、各种运行机器学习模型算法的计算单元、数字信号处理器(DSP)、以及任何适当的处理器、控制器、微控制器等。计算单元601执行上文所描述的各个方法和处理。例如,在一些实施例中,埋点数据校验方法可被实现为计算机软件程序,其被有形地包含于机器可读介质,例如存储单元608。在一些实施例中,计算机程序的部分或者全部可以经由ROM 602和/或通信单元609而被载入和/或安装到电子设备600上。在一些实施例中,计算单元601可以通过其他任何适当的方式(例如,借助于固件)而被配置为执行埋点数据校验方法。
用于实施本公开的方法的程序代码可以采用一个或多个编程语言的任何组合来编写。这些程序代码可以提供给通用计算机、专用计算机或其他可编程数据处理装置的处理器或控制器,使得程序代码当由处理器或控制器执行时使流程图和/或框图中所规定的功能/操作被实施。程序代码可以完全在机器上执行、部分地在机器上执行,作为独立软件包部分地在机器上执行且部分地在远程机器上执行或完全在远程机器或服务器上执行。
在本公开的上下文中,机器可读介质可以是有形的介质,其可以包含或存储以供指令执行***、装置或设备使用或与指令执行***、装置或设备结合地使用的程序。机器可读介质可以是机器可读信号介质或机器可读储存介质。机器可读介质可以包括但不限于电子的、磁性的、光学的、电磁的、红外的、或半导体***、装置或设备,或者上述内容的任何合适组合。机器可读存储介质的更具体示例会包括基于一个或多个线的电气连接、便携式计算机盘、硬盘、随机存取存储器(RAM)、只读存储器(ROM)、可擦除可编程只读存储器(EPROM或快闪存储器)、光纤、便捷式紧凑盘只读存储器(CD-ROM)、光学储存设备、磁储存设备、或上述内容的任何合适组合。
如本公开使用的,术语“机器可读介质”和“计算机可读介质”指的是用于将机器指令和/或数据提供给可编程处理器的任何计算机程序产品、设备、和/或装置(例如,磁盘、光盘、存储器、可编程逻辑装置(PLD)),包括,接收作为机器可读信号的机器指令的机器可读介质。术语“机器可读信号”指的是用于将机器指令和/或数据提供给可编程处理器的任何信号。
为了提供与用户的交互,可以在计算机上实施此处描述的***和技术,该计算机具有:用于向用户显示信息的显示装置(例如,CRT(阴极射线管)或者LCD(液晶显示器)监视器);以及键盘和指向装置(例如,鼠标或者轨迹球),用户可以通过该键盘和该指向装置来将输入提供给计算机。其它种类的装置还可以用于提供与用户的交互;例如,提供给用户的反馈可以是任何形式的传感反馈(例如,视觉反馈、听觉反馈、或者触觉反馈);并且可以用任何形式(包括声输入、语音输入或者、触觉输入)来接收来自用户的输入。
可以将此处描述的***和技术实施在包括后台部件的计算***(例如,作为数据服务器)、或者包括中间件部件的计算***(例如,应用服务器)、或者包括前端部件的计算***(例如,具有图形用户界面或者网络浏览器的用户计算机,用户可以通过该图形用户界面或者该网络浏览器来与此处描述的***和技术的实施方式交互)、或者包括这种后台部件、中间件部件、或者前端部件的任何组合的计算***中。可以通过任何形式或者介质的数字数据通信(例如,通信网络)来将***的部件相互连接。通信网络的示例包括:局域网(LAN)、广域网(WAN)和互联网。
计算机***可以包括客户端和服务器。客户端和服务器一般远离彼此并且通常通过通信网络进行交互。通过在相应的计算机上运行并且彼此具有客户端-服务器关系的计算机程序来产生客户端和服务器的关系。
Claims (12)
1.一种埋点数据校验方法,其特征在于,包括:
获取待校验埋点数据;
确定所述待校验埋点数据对应的参照埋点数据;
基于所述参照埋点数据,按照至少两个预设校验类型,对所述待校验埋点数据进行校验,生成每个所述预设校验类型对应的局部校验结果;
汇总各所述局部校验结果,生成所述待校验埋点数据的初步校验结果。
2.根据权利要求1所述的方法,其特征在于,所述确定所述待校验埋点数据对应的参照埋点数据包括:
基于第一关键字段,分别对所述待校验埋点数据和各预设埋点数据进行字段值提取,确定所述待校验埋点数据的第一埋点标识和各所述预设埋点数据的第二埋点标识;其中,所述预设埋点数据为基于埋点需求而设置的埋点数据;
将所述第一埋点标识与各所述第二埋点标识进行匹配,并将匹配成功的所述第二埋点标识对应的所述预设埋点数据确定为所述参照埋点数据。
3.根据权利要求2所述的方法,其特征在于,所述基于第一关键字段,分别对所述待校验埋点数据和各预设埋点数据进行字段值提取,确定所述待校验埋点数据的第一埋点标识和各所述预设埋点数据的第二埋点标识包括:
基于目标埋点数据的参数结构,确定所述第一关键字段的字段值获取路径;其中,所述目标埋点数据为所述待校验埋点数据或所述预设埋点数据;
基于所述字段值获取路径,从所述目标埋点数据中提取第一字段值;
基于所述第一字段值,确定所述目标埋点数据的目标埋点标识;其中,在所述目标埋点数据为所述待校验埋点数据的情况下,所述目标埋点标识为所述第一埋点标识;在所述目标埋点标识为所述预设埋点数据的情况下,所述目标埋点标识为所述第二埋点标识。
4.根据权利要求3所述的方法,其特征在于,所述基于所述第一字段值,确定所述目标埋点数据的目标埋点标识包括:
若确定预设配置文件中存在所述第一字段值,则从所述预设配置文件中确定所述目标埋点数据对应的第二关键字段;
基于所述第二关键字段,从所述目标埋点数据中提取第二字段值;
将所述第一字段值和所述第二字段值的组合,确定为所述目标埋点标识。
5.根据权利要求4所述的方法,其特征在于,所述基于所述第一字段值,确定所述目标埋点数据的目标埋点标识还包括:
若确定所述预设配置文件中不存在所述第一字段值,则将所述第一字段值确定为所述目标埋点标识。
6.根据权利要求1所述的方法,其特征在于,所述预设校验类型包括公共参数校验类型、非枚举关键字校验类型、枚举关键字校验类型或枚举值校验类型;
所述基于所述参照埋点数据,按照至少两个预设校验类型,对所述待校验埋点数据进行校验,生成每个所述预设校验类型对应的局部校验结果包括:
按照各所述预设校验类型,同时且独立地对所述待校验埋点数据进行如下校验:
以所述参照埋点数据为校验基准,按照所述公共参数校验类型,对所述待校验埋点数据进行公共参数的异常校验,生成所述公共参数校验类型对应的局部校验结果;
以所述参照埋点数据为校验基准,按照所述非枚举关键字校验类型,对所述待校验埋点数据进行非枚举参数的异常校验,生成所述非枚举关键字校验类型对应的局部校验结果;
以所述参照埋点数据为校验基准,按照所述枚举关键字校验类型,对所述待校验埋点数据进行枚举参数的异常校验,生成所述枚举关键字校验类型对应的局部校验结果;
以所述参照埋点数据为校验基准,按照所述枚举值校验类型,对所述待校验埋点数据进行枚举参数的枚举值的异常校验,生成所述枚举值校验类型对应的局部校验结果。
7.根据权利要求1至6任一项所述的方法,其特征在于,在所述预设校验类型包括枚举值校验类型的情况下,汇总各所述局部校验结果,生成所述待校验埋点数据的初步校验结果之后,所述方法还包括:
确定所述参照埋点数据对应的多个所述待校验埋点数据的所述初步校验结果,并汇总各所述初步校验结果中的每个枚举关键字的出现过的枚举值;
针对每个所述枚举关键字,比较所述枚举关键字对应的汇总后的所述出现过的枚举值和所述参照埋点数据包含的所述枚举关键字的参照枚举值,确定所述枚举关键字的缺失枚举值;
按照各所述预设校验类型汇总各所述初步校验结果,并组合汇总后的所述初步校验结果和各所述枚举关键字对应的所述缺失枚举值,生成目标校验结果。
8.根据权利要求1至6任一项所述的方法,其特征在于,在所述确定所述待校验埋点数据对应的参照埋点数据之后,所述方法还包括:
若确定所述参照埋点数据对应的校验标识为未校验标识或校验正常标识,则触发执行所述基于所述参照埋点数据,按照至少两个预设校验类型,对所述待校验埋点数据进行校验,生成每个所述预设校验类型对应的局部校验结果的步骤。
9.根据权利要求1至6任一项所述的方法,其特征在于,所述获取待校验埋点数据包括:
基于查询关键词,从埋点数据库中筛选得到所述待校验埋点数据,且所述待校验埋点数据按行记录在本地存储文件中;
其中,所述查询关键词包括查询起始时间、应用程序标识、终端类型标识、用户标识和自定义查询标识中的至少一个。
10.一种埋点数据校验装置,其特征在于,包括:
待校验埋点数据获取模块,用于获取待校验埋点数据;
参照埋点数据确定模块,用于确定所述待校验埋点数据对应的参照埋点数据;
局部校验结果生成模块,用于基于所述参照埋点数据,按照至少两个预设校验类型,分别对所述待校验埋点数据和所述参照埋点数据进行校验,生成每个所述预设校验类型对应的局部校验结果;
初步校验结果生成模块,用于汇总各所述局部校验结果,生成所述待校验埋点数据的初步校验结果。
11.一种电子设备,包括:
处理器;以及
存储程序的存储器,
其中,所述程序包括指令,所述指令在由所述处理器执行时使所述处理器执行根据权利要求1-9中任一项所述的方法。
12.一种存储有计算机指令的非瞬时计算机可读存储介质,其中,所述计算机指令用于使所述计算机执行根据权利要求1-9中任一项所述的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210599292.XA CN114860549B (zh) | 2022-05-30 | 2022-05-30 | 埋点数据校验方法、装置、设备和存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210599292.XA CN114860549B (zh) | 2022-05-30 | 2022-05-30 | 埋点数据校验方法、装置、设备和存储介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN114860549A true CN114860549A (zh) | 2022-08-05 |
CN114860549B CN114860549B (zh) | 2024-02-20 |
Family
ID=82641874
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202210599292.XA Active CN114860549B (zh) | 2022-05-30 | 2022-05-30 | 埋点数据校验方法、装置、设备和存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN114860549B (zh) |
Citations (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106484590A (zh) * | 2015-09-02 | 2017-03-08 | 阿里巴巴集团控股有限公司 | 数据校验方法和装置 |
CN110377631A (zh) * | 2019-06-17 | 2019-10-25 | 平安科技(深圳)有限公司 | 案件信息处理方法、装置、计算机设备和存储介质 |
CN110764942A (zh) * | 2019-09-17 | 2020-02-07 | 平安银行股份有限公司 | 多种类数据校验方法、装置、计算机***及可读存储介质 |
CN112181804A (zh) * | 2020-08-31 | 2021-01-05 | 五八到家有限公司 | 一种参数校验方法、设备以及存储介质 |
CN113114734A (zh) * | 2021-03-24 | 2021-07-13 | 北京沃东天骏信息技术有限公司 | 信息处理方法、装置、设备及存储介质 |
CN113448834A (zh) * | 2020-09-25 | 2021-09-28 | 北京新氧科技有限公司 | 埋点测试方法、装置、电子设备及存储介质 |
CN114116802A (zh) * | 2021-11-26 | 2022-03-01 | 南京星云数字技术有限公司 | Flink计算框架的数据处理方法、装置、设备和存储介质 |
CN114371974A (zh) * | 2021-12-15 | 2022-04-19 | 阿里巴巴(中国)有限公司 | 埋点数据校验方法及电子设备 |
CN114546799A (zh) * | 2022-01-28 | 2022-05-27 | 北京百度网讯科技有限公司 | 埋点日志校验方法、装置、电子设备、存储介质及产品 |
-
2022
- 2022-05-30 CN CN202210599292.XA patent/CN114860549B/zh active Active
Patent Citations (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106484590A (zh) * | 2015-09-02 | 2017-03-08 | 阿里巴巴集团控股有限公司 | 数据校验方法和装置 |
CN110377631A (zh) * | 2019-06-17 | 2019-10-25 | 平安科技(深圳)有限公司 | 案件信息处理方法、装置、计算机设备和存储介质 |
CN110764942A (zh) * | 2019-09-17 | 2020-02-07 | 平安银行股份有限公司 | 多种类数据校验方法、装置、计算机***及可读存储介质 |
CN112181804A (zh) * | 2020-08-31 | 2021-01-05 | 五八到家有限公司 | 一种参数校验方法、设备以及存储介质 |
CN113448834A (zh) * | 2020-09-25 | 2021-09-28 | 北京新氧科技有限公司 | 埋点测试方法、装置、电子设备及存储介质 |
CN113114734A (zh) * | 2021-03-24 | 2021-07-13 | 北京沃东天骏信息技术有限公司 | 信息处理方法、装置、设备及存储介质 |
CN114116802A (zh) * | 2021-11-26 | 2022-03-01 | 南京星云数字技术有限公司 | Flink计算框架的数据处理方法、装置、设备和存储介质 |
CN114371974A (zh) * | 2021-12-15 | 2022-04-19 | 阿里巴巴(中国)有限公司 | 埋点数据校验方法及电子设备 |
CN114546799A (zh) * | 2022-01-28 | 2022-05-27 | 北京百度网讯科技有限公司 | 埋点日志校验方法、装置、电子设备、存储介质及产品 |
Also Published As
Publication number | Publication date |
---|---|
CN114860549B (zh) | 2024-02-20 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN106844217B (zh) | 对应用的控件进行埋点的方法及装置、可读存储介质 | |
CN108090567B (zh) | 电力通信***故障诊断方法及装置 | |
CN108427632B (zh) | 自动测试方法及装置 | |
CN107223257B (zh) | 测试方法、测试服务器及*** | |
CN112395616A (zh) | 漏洞处理的方法、装置及计算机设备 | |
CN109815697B (zh) | 误报行为处理方法及装置 | |
CN112328499A (zh) | 一种测试数据生成方法、装置、设备及介质 | |
CN112650688A (zh) | 自动化回归测试方法、关联设备以及计算机程序产品 | |
CN112799722A (zh) | 命令识别方法、装置、设备和存储介质 | |
CN111708712A (zh) | 用户行为测试用例的生成方法、流量回放方法及电子设备 | |
CN110287700B (zh) | 一种iOS应用安全分析方法及装置 | |
Riadi et al. | A study of mobile forensic tools evaluation on android-based LINE messenger | |
CN114020432A (zh) | 任务异常处理方法、装置及任务异常处理*** | |
CN107908525B (zh) | 告警处理方法、设备及可读存储介质 | |
CN117493188A (zh) | 接口测试方法及装置、电子设备及存储介质 | |
US20120310849A1 (en) | System and method for validating design of an electronic product | |
CN111506455B (zh) | 服务发布结果的查验方法及装置 | |
CN111046382B (zh) | 数据库审计方法、设备、存储介质及装置 | |
CN114969759B (zh) | 工业机器人***的资产安全评估方法、装置、终端及介质 | |
CN114860549B (zh) | 埋点数据校验方法、装置、设备和存储介质 | |
CN115543816A (zh) | 软件回归测试结果验证方法、装置、设备及存储介质 | |
CN114064510A (zh) | 功能测试方法、装置、电子设备和存储介质 | |
CN107102938B (zh) | 测试脚本的更新方法及装置 | |
CA3144122A1 (en) | Data verifying method, device and system | |
CN113342632A (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 |