CN115776508A - 一种埋点校验方法及系统 - Google Patents
一种埋点校验方法及系统 Download PDFInfo
- Publication number
- CN115776508A CN115776508A CN202211378890.0A CN202211378890A CN115776508A CN 115776508 A CN115776508 A CN 115776508A CN 202211378890 A CN202211378890 A CN 202211378890A CN 115776508 A CN115776508 A CN 115776508A
- Authority
- CN
- China
- Prior art keywords
- buried point
- point configuration
- configuration rule
- buried
- 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.)
- Pending
Links
Images
Classifications
-
- 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
- Y02P—CLIMATE CHANGE MITIGATION TECHNOLOGIES IN THE PRODUCTION OR PROCESSING OF GOODS
- Y02P90/00—Enabling technologies with a potential contribution to greenhouse gas [GHG] emissions mitigation
- Y02P90/30—Computing systems specially adapted for manufacturing
Landscapes
- Management, Administration, Business Operations System, And Electronic Commerce (AREA)
Abstract
本申请公开了一种埋点校验方法及系统,所述方法包括:对业务系统设置监听,当监听到触发埋点上报时,获取传入参数,所述传入参数包括埋点配置ID和埋点数据对象,然后初始化预设埋点配置规则管理器,所述预设埋点配置规则管理器中存储有埋点配置规则数据,再根据埋点配置ID,从预设埋点配置规则管理器中,获取对应的埋点配置规则,最后根据埋点配置规则校验埋点数据对象,返回埋点校验结果,并将校验结果反馈到业务系统。通过前置埋点校验设计和分离埋点配置规则,使得开发人员即可根据埋点校验装置反馈的错误信息进行修复,并且与埋点相关的协同人员可以便捷地访问获取埋点配置信息,增加了信息同步的整体效率。
Description
技术领域
本申请涉及计算机信息技术领域,尤其涉及一种埋点校验方法及系统。
背景技术
在web应用或软件应用使用过程中,用户访问界面的次数,以及记录用户与界面交互的行为数据,例如点击、滑动等操作,此类数据被称为埋点数据,基于埋点数据,应用设计人员可以通过分析不断优化应用。
为了确保埋点数据分析的正确性,会先对收集的埋点数据进行校验,以验证收集的埋点数据是否与埋点设计需求一致,当校验通过时则会将埋点数据进行上报。例如一种埋点上报流程系统,包括开发人员修正模块、业务系统、埋点校验模块、生成埋点报告模块、埋点报告检查模块,其中,开发人员修正模块用于根据检查埋点模块反馈的错误信息进行修正,业务系统包括埋点上报触发模块、埋点上报模块、埋点上报模块用于上报埋点数据,埋点校验模块用于对上报埋点数据进行校验,生成埋点报告模块用于根据埋点校验结果生成埋点报告,埋点报告检查模块用于根据检查结果提交埋点报告或者将错误信息反馈到业务人员开发模块。
然而,在实际的埋点上报流程中,会出现埋点数据错误、埋点数据缺失和埋点信息缺乏管理,无法将埋点信息同步到各个工种等问题。为了解决以上问题,现有的技术方案分为两类,一类是在已有的埋点流程中,建立埋点配置和埋点校验两套系统,完成埋点配置与埋点数据的校验工作。这种方式需要完成两套系统的开发,以及相关对接工作,投入成本较大。另一类是在已有的埋点流程中,由测试人员拦截上报的埋点数据进行校验。这种方法会使得埋点校验过程只适用于测试阶段,无法满足应用程序正常使用阶段。
发明内容
本申请的目的是提供一种埋点校验方法,无须投入额外系统的开发成本,在应用开发过程中实现实时埋点校验并反馈,并且可以实时输出系统埋点信息,串联埋点信息同步给相关工种人员。
第一方面,本申请提供一种埋点校验方法,采用如下的技术方案:
一种埋点校验方法,包括以下步骤:
对业务系统设置监听,当监听到触发埋点上报时,获取传入参数,所述传入参数包括埋点配置ID和埋点数据对象;
初始化预设埋点配置规则管理器,所述预设埋点配置规则管理器中存储有埋点配置规则数据;
根据埋点配置ID,从预设埋点配置规则管理器中,获取对应的埋点配置规则;
根据埋点配置规则校验埋点数据对象,返回埋点校验结果,并将校验结果反馈到业务系统。
通过上述技术方案,可以将埋点校验流程前置在业务系统中,使得就埋点问题的反馈流程而言,无须完全依赖测试人员、数据分析师等开发人员以外的工种人员发现问题并反馈给开发人员,开发人员自身便可发现问题并解决,并且通过将埋点配置规则分离存储,可方便将埋点配置规则信息同步给埋点相关的协同人员,提升了信息同步的整体效率。
可选的,所述初始化预设埋点配置规则管理器,包括:
对埋点配置规则数据进行拆分,以形成多个与埋点配置规则一一对应的JSON文件;
将埋点配置规则对应的JSON文件拷贝输出到业务系统源码编译结果目录中,以将埋点配置规则和系统源码编译结果一并发布到生产环境。
可选的,所述根据埋点配置ID,从预设埋点配置规则管理器中,获取对应的埋点配置规则,包括:
根据埋点配置ID,从预设埋点配置规则管理器中获取埋点配置规则对应的JSON文件;
解析JSON文件,获取埋点配置规则。
可选的,所述根据埋点配置规则校验埋点数据对象,返回埋点校验结果,包括:
将埋点数据对象中的属性根据埋点配置规则一一进行对比,并获取对比结果集合;
根据对比结果集合,获取埋点校验结果。
可选的,所述埋点数据对象包括属性名称和对应参数值,所述根据埋点配置规则校验埋点数据对象之前,还包括:
获取并计算埋点配置规则中的参数数量;
判断埋点数据对象内的属性数量是否和配置规则中的参数数量相同,
若不是,则输出校验结果不通过提示信息;
若是,根据埋点配置规则校验埋点数据对象。
可选的,所述将埋点数据对象中的属性根据埋点配置规则一一进行对比,并获取对比结果集合,包括:
依次根据埋点数据对象的属性名称,从埋点配置规则中匹配出对应的规则内容;
判断埋点数据对象的当前属性对应参数值是否符合对应的规则内容;
若否,记该属性的对比结果为校验失败,并将该属性名称以及对应参数值记为错误信息;
若是,记该属性的对比结果为校验成功;
根据埋点数据对象中的各属性对比结果和对应的错误信息,形成对比结果集合。
可选的,所述规则内容,包括字面量规则、枚举规则和固定值规则,所述判断埋点数据对象的属性对应参数值是否符合对应的规则内容,包括:
根据规则内容,确定属性对应参数值的数据结构、数据类型和取值范围;
基于数据结构、数据类型和取值范围,来判断属性对应参数值是否符合规范。
可选的,所述将校验结果反馈到业务系统之后,还包括:
若校验结果为校验通过,则将埋点数据进行上报;
若校验结果为校验未通过,则获取对比结果集合中的错误信息,并将错误信息进行输出。
第二方面,本申请提供一种埋点校验系统,包括:
埋点数据获取模块,用于对业务系统设置监听,当触发埋点上报时,获取传入参数,所述传入参数包括埋点配置ID和埋点数据对象;
初始化模块,用于初始化预设埋点配置规则管理器,所述预设埋点配置规则管理器中存储有埋点配置规则数据;
埋点规则获取模块,用于根据埋点配置ID,从预设埋点配置规则管理器中获取埋点配置规则;
埋点校验模块,用于根据埋点配置规则校验埋点数据对象,返回埋点校验结果,并将校验结果反馈到业务系统。
第三方面,本申请提供一种计算机可读存储介质,存储有能够被处理器加载并执行上述一种埋点校验方法的计算机程序。
综上所述,本申请通过将埋点校验流程设置在埋点上报流程系统的业务系统中,使得开发人员即可根据埋点校验装置反馈的错误信息进行修复。另外,通过单独分离了埋点配置信息到一个单独的文件中,使得在应用源代码发布之后,与埋点相关的协同人员可以方便地访问获取埋点配置信息,增加了信息同步的整体效率。此外,相较于在应用的测试阶段进行校验而言,本申请方案既覆盖了应用的开发阶段,也覆盖了应用的使用阶段,用户在正常使用阶段,埋点系统在每次埋点上报前都将进行埋点校验,并且还可以通过业务系统中对校验的错误信息进行公示,方便开发人员第一时间获取到信息并进行修正。
附图说明
图1是本申请实施例所提供的一种埋点校验方法的流程图;
图2是本申请实施例所提供的一种埋点上报流程系统的示意图;
图3是本申请实施例所提供的校验埋点数据对象中的属性数量的流程图;
图4是本申请实施例所提供的对埋点数据对象中的属性根据埋点配置规则一一进行对比的流程图;
图5是本申请实施例所提供的一种埋点校验系统的示意图。
具体实施方式
以下结合附图1-附图5,对本申请作进一步详细说明。
本申请提供一种埋点校验方法,参见图1,包括以下步骤:
S100、对业务系统设置监听,当监听到触发埋点上报时,获取传入参数,所述传入参数包括埋点配置ID和埋点数据对象。
其中,业务系统为埋点上报流程系统中一个模块,参见图2,业务包括触发埋点上报、埋点上报模块和上报埋点三个部分,在埋点上报流程中,开发人员在应用程序中设置埋点,当业务系统触发埋点上报之后,会调用埋点上报模块,埋点上报模块会整合收集的埋点数据,然后执行上报埋点,将埋点数据上报到埋点数据中心进行相应验证和分析,最后生成埋点报告,数据分析师会对生成的埋点包括进行分析,并根据埋报告来确定是否需要进行修正或调整,若有错误信息需要修正,则将相应的埋点报告信息反馈给开发人员,若埋点报告检查无误则会将埋点报告进行提交。
埋点配置ID相当于索引,根据埋点配置ID可获取到对应的埋点配置规则;埋点数据对象则为基于预先设置的埋点收集到的数据,例如统计应用程序中某个按钮的点击次数、某个详情页的停留时间、进入某个页面的次数等,通过对埋点数据的分析可判断某个需求的合理性或者可用性,从而对应用进行优化。
在本申请实施例中,通过在业务系统中植入埋点校验流程,使得开发人员在开发阶段即可根据埋点校验反馈的错误信息进行修复,为了实现实时埋点校验并反馈,会在业务系统中的埋点触发阶段设置监听器,当监听到触发埋点上报时,例如埋点数据的收集数量达到预设值,或者业务开发人员主动发送触发埋点上报指令,便开始进行校验,并将校验结果中的错误信息反馈给业务开发人员进行相应修正,例如校验结果中的某一项数据出现偏差,通过分析若是埋点的问题,则可对埋点设计进行相应修改。
S200、初始化预设埋点配置规则管理器。
其中,预设埋点配置规则管理器用于存储埋点配置规则。埋点配置规则为根据埋点设计中的事件和对应属性的完整性和数据类型设定的规范。埋点设计则为业务方规划数据需求,然后由数据团队进行需求分析,进而输出埋点需求文档,也就需要收集的数据,业务开发人员会基于埋点需求文档来进行埋点设计和开发,埋点设计会分为事件、事件属性以及事件属性说明,例如用户在某一平台中发帖子的应用,埋点设计中的事件为进入编辑帖子页和发布帖子,对应的事件属性则分别为(时间、用户ID…)和(时间、帖子ID、帖子标题、发布入口…),事件属性说明则为事件属性的相应说明,如事件属性为时间的事件属性说明则为记录进入编辑帖子页的时间。根据埋点设计,开发人员则可进行埋点开发,进而收集埋点数据。
根据埋点设计即可制定相应规范标准,以形成埋点配置规则,例如事件属性中时间,则数据类型为时间类型;用户ID,对应的数据类型即为由固定位数的字母和/或数字组成,对所有的事件以及对应的属性设置对应的规范,最后即可形成埋点配置规则。
由于当通过埋点校验得到错误信息,并反馈给开发人员之后,开发人员基于错误信息进行了埋点设计修正,相应地埋点配置规则也应该有所调整,并将调整后的埋点配置信息同步到埋点相关方,以提升信息同步地效率,这样也可以对相应问题进行有效的信息传递,以提供更好地解决方式。其中相关方包括:产品经理、开发人员、测试人员、数据分析师。
因此,为了实时获取业务系统内最新的埋点配置信息,使埋点相关方实时同步信息,在本申请实施例中,会将埋点配置规则单独进行存储管理,并提供相应的访问接口,可方便埋点相关方实时进行埋点配置信息的查看,同时因为在业务系统内部完成埋点校验,增加埋点配置数据会导致增加最后编译文件体积,因此采用分类埋点配置文件的形式,将埋点配置规则单独进行存储管理,实现按需加载,使得不会增加原有编译结果的体积。
为了方便针对不同的事件进行埋点配置规则信息的获取,会对预设埋点配置规则管理器进行初始化,具体包括如下步骤:
S210、对埋点配置规则数据进行拆分,以形成多个与埋点配置规则一一对应的JSON文件。
由于埋点配置规则数据是针对应用程序中的埋点设计设置的规范标准,而在一个应用程序中埋点需求可能会含有多个事件,例如,上述提到的可以发帖的应用程序,除了进入编辑帖子页和发布帖子事件外,还有登陆事件、注册事件等事件,相应地也会有对应的埋点设计和埋点配置规则,很多时候在进行埋点校验的时候,可能并不是所有的事件都会涉及到,可能只有一个事件,在这种情况下,则不需要获取到所有的埋点配置规则,只需有针对性地获取对应的埋点配置规则即可。
在本申请实施例中,为了更好地对埋点配置规则进行管理,对埋点配置规则数据按事件进行了拆分,一个事件对应一个埋点配置规则,最后形成多个与埋点配置规则一一对应的JSON文件,并对每个JSON文件设置了唯一标识,例如按照事件名称缩写建立索引,即埋点配置ID,根据埋点配置ID即可获取到对应的埋点配置规则。
S220、将埋点配置规则对应的JSON文件拷贝输出到业务系统源码编译结果目录中,以将埋点配置规则和系统源码编译结果一并发布到生产环境。
在本申请实施例中,除了对埋点配置规则进行按需获取埋点配置规则外,还在业务系统源码打包编译时,将埋点配置文件拷贝输出到编译结果目录中,和系统源码编译结果一并发布到生产环境。一方面,系统生产环境的编译结果可以直接访问对应埋点配置文件,方便开发人员在开发阶段进行实时调整。另一方面,可以将埋点配置文件的访问地址,同步给埋点相关方,让埋点相关方可直接根据访问地址访问埋点配置文件。
S300、根据埋点配置ID,从预设埋点配置规则管理器中,获取对应的埋点配置规则。
在本申请实施例中,根据埋点配置ID,从预设埋点配置规则管理器中,获取对应的埋点配置规则,具体包括如下步骤:
S310、根据埋点配置ID,从预设埋点配置规则管理器中获取埋点配置规则对应的JSON文件。
S320、解析JSON文件,获取埋点配置规则。
在本申请实施例中,在业务系统中触发埋点上报时,会传入参数以对埋点数据进行校验,其中传入参数则有埋点配置ID,与之对应的还有埋点收集数据,也就是埋点数据对象。由于在初始化预设埋点配置规则管理器中,已经对单个的埋点配置规则对应的JSON文件建立了索引,因此根据埋点配置ID即可获取到对应的JSON文件。
获取到对应的JSON文件之后进行解析,即可获取到埋点配置规则,对JSON文件进行解析目的在于提取相应的数据,并进行相应的归类,以便更好地与埋点数据进行比对校验。例如,a1010.JSON文件的埋点配置规则如下:
{
“a”:{“rule”:[{“name”:“位置”}]},
“b”:{“rule”:[{“name”:“ID”}]},
“c”:{“rule”:[{“name”: “特殊标识”,“value”:1234}]},
“d”:{“rule”:[{“name”:“分类”,“enum”:[“image”,“video”]}]}
}
通过对上述埋点配置规则进行解析,即可获知属性a名称为位置、属性b名称为ID、属性c名称为特殊标识,且固定值为1234、属性d名称为分类,仅允许取值为“image”或“video”,即[“a”,“位置”] [“b”,“ID”] [“c”,“特殊标识”:1234] [“d”,“分类”:{“image”/“video”}]则为事件标识a1010的埋点配置规则。
S400、根据埋点配置规则校验埋点数据对象,返回埋点校验结果,并将校验结果反馈到业务系统。
其中,埋点校验结果除了表征校验是否通过之外,还包含有相应的错误信息和日志信息,错误信息表示的是埋点数据对象中不符合埋点配置规则的数据,例如,进行帖子编辑页面的用户数有100,而发布帖子的用户数必然不会大于100,若收集的埋点数据中显示发布帖子的用户数大于100,则说明出现错误,会将错误的信息包括属性名称以及对应的取值记录下来。日志信息则是整个校验的过程信息,例如对埋点数据对象中的属性a、b、c、d分别按照上述的埋点配置规则进行比对校验,过程信息则会记录每一次比对的结果,如a属性数值为XX,埋点配置规则中a属性数值为XX对比校验成功、b属性数值为XX,埋点配置规则中b属性数值为XXX对比校验失败等。通过对日志信息的分析可以帮助找到问题出现的原因以及如何去进行修正。
由于对埋点数据进行校验是会将埋点数据对象中的每个属性与埋点配置规则中对应的属性进行校验,因此在本申请实施例中,根据埋点配置规则校验埋点数据对象之前,参见图3,还包括如下步骤:
S410、获取并计算埋点配置规则中参数数量。
S420、判断埋点数据对象内的属性数量是否和埋点配置规则中的参数数量相同。
S430、若不是,则输出校验未通过信息提示。
S440、若是,根据埋点配置规则校验埋点数据对象。
其中,埋点配置规则中参数数量表征的也是属性的数量,且每个属性都有对应的取值参考。由于当埋点数据对象中的属性数量与配置规则中的参数数量不一致时,说明校验不可能会通过,也就不需要再对埋点数据对象中的数据进行逐一比对了,则直接输出校验未通过提示信息以及相应报错信息,并通过控制台报错或者异常捕捉系统将相应报错信息反馈给业务系统开发人员以进行修正。
若埋点数据对象中的属性数量和埋点配置规则中的参数数量是一致的,则根据埋点配置规则逐一对埋点数据对象的属性取值进行校验,并返回相应的校验结果。
在本申请实施例中,根据埋点配置规则校验埋点数据对象,返回埋点校验结果,具体包括如下步骤:
S450、将埋点数据对象中的属性根据埋点配置规则一一进行对比,并获取对比结果集合。
在本申请实施例中,将埋点数据对象中的属性根据埋点配置规则一一进行对比,并获取对比结果集合,参见图4,具体包括如下步骤:
S451、依次根据埋点数据对象的属性名称,从埋点配置规则中匹配出对应的规则内容。
在本申请实施例中,通过埋点配置规则来对埋点数据对象进行校验,本质上是对埋点收集的数据进行验证,验证数据是否符合规范,若符合规范,才会认为校验成功,只有校验成功的埋点数据才能帮助应用开发人员或者相关方去进行数据分析以对应用进行优化。
由于校验过程更多地是针对埋点数据对象中的属性数值,因此在对某一个属性进行验证时,需要根据属性名称找到对应的规则内容,例如,以上述埋点配置规则为例,埋点数据对象为{a:1,b:2,c:3,d:4},先对属性a进行验证,从埋点配置规则中找到属性a的规则内容为“位置”,通过预先定义的规范准则,“位置”对应的规则为取值为数字。由此便可根据埋点数据对象中属性a的取值来判断是否符合规范。
同理,依次根据属性名称,为埋点数据对象中的每个属性从埋点配置规则中匹配出对应的规则内容。
S452、判断埋点数据对象的当前属性对应参数值是否符合对应的规则内容。
在本申请实施例中,对埋点数据对象中的某个属性从埋点配置规则中匹配到相应的规则内容之后,则需要判断埋点数据对象的属性对应参数值是否符合对应的规则内容,同时将每次的校验判断过程记录在日志信息中。
由于规则内容也分为不同的类型,不同的规则内容对应着不同的规范标准。
因此,在本申请实施例中,判断埋点数据对象的属性参数是否符合对应的规则内容,具体包括如下步骤:
S4521、根据规则内容,确定对应属性参数值的数据结构、数据类型和取值范围。
S4522、基于数据结构、数据类型和取值范围,来判断对应属性参数值是否符合规范。
其中,规则包括字面量规则、枚举规则、固定值规则。例如上述提到的规则内容“位置”,是字面量规则,表征的是取值必须为数字;规则内容“ID”,同样是字面量规则,表征的是指必须由字母数字组成的长度为8位的字符串;规则内容为“分类”:{“image”/“video”},是枚举规则,表征的是属性取值必须为“image”或“video”;规则内容“特殊标识”:1234,是固定值规则,表征的是属性值必须为固定值1234。
在本申请实施例中,由于将校验过程放置在了业务系统中,相较于在业务系统外进行拦截埋点校验而言,校验过程在业务系统内部,在校验期间会占用一定的计算资源,因此只是基于埋点数据的结构和类型以及取值范围来进行校验,并没有对数据的真实性进行校验,以此来减少计算资源的占用。
因为埋点上报的数据是由业务系统内部代码获取到的运行时数据,错误的原因更大概率是引用错误或者没有引用,虚假伪造情况极少,例如,业务系统当前登录的用户userID是 123,上报的埋点数据中 userID 为空,或者 userID 为 456,前者是没传,后者是错误引用了本地其它变量值,另外通过埋点错误数据统计,绝大部分原因为赋值错误或者漏传,因此校验埋点真实性的意义并不大,反而会增加校验逻辑过程,占用更多的计算资源,因此在本申请实施例中只是基于埋点数据的结构和类型以及取值范围来进行校验。
通过规则内容可以确定属性取值的数据结构、数据类型和取值范围,是数字还是其他的文本类型,还是由数字加上字母或者符合组成,数字是否是固定值或是取值范围多大等。
根据对应规则内容表征的数据结构、数据类型和取值范围可以确定埋点数据对象中的属性取值是否符合规范,以上述埋点配置规则为例,埋点数据对象为{a:1,b:2,c:3,d:“image”},a,b均为字面量规则,a属性取值为数字,属性a取值1符合规范,a属性校验成功;b属性取值限定为字母和数字组成的8位字符串,b属性取值2显然不符合规范,b属性校验失败;c属性规则为固定值规则,取值限定为固定值“1234”,属性c取值3显然不符合规范,c属性校验失败;d属性规则为枚举规则,取值限定为“image”或“video”,d属性取值 “image”符号规范,d属性校验成功。
S453、若埋点数据对象的当前属性对应参数值不符合对应的规则内容否,记该属性的对比结果为校验失败,并将该属性的相关数据记为错误信息。
S454、若埋点数据对象的当前属性对应参数值符合对应的规则内容是,记该属性的对比结果为校验成功。
在本申请实施例中,在判断埋点数据对象的属性值是否符合对应的规则内容的过程中,若出现埋点数据对象中的属性值不符合规范,则说明该属性校验失败,则会将该属性的名称和取值记为错误信息。相对的,若埋点数据对象中的属性值符合规范,则说明该属性校验成功。
S455、根据埋点数据对象中的各属性对比结果和对应的错误信息,形成对比结果集合。
在本申请实施例中,会将埋点数据对象中的各属性对比结果存入一个数据集合中作为对比结果集合,若某属性对比结果为校验失败,则还会将对应的错误信息作为该属性关联信息也存入对比结果集合。
S460、根据对比结果集合,获取埋点校验结果。
在本申请实施例中,通过将埋点数据对象中的所有属性根据埋点配置规则一一进行对比,可以获取到对比结果集合,如属性a,校验成功;属性b校验失败,错误信息为XX。
因此根据对比结果集合,可获取当前埋点数据对象的校验结果,若出现某一属性的比对结果为校验失败,则当前埋点数据对象的校验结果为校验不通过,并且会将对应属性的错误信息记录在校验结果中。若所有属性的对比结果均为校验成功,则说明当前埋点数据对象的校验结果为校验通过。
在本申请实施例中,通过埋点配置规则校验埋点数据对象,获取到校验结果后,会将校验结果反馈到业务系统中,然后由业务系统根据校验结果,来进行相应地处理。
因此,将校验结果反馈到业务系统之后,还包括如下步骤:
S510、若校验结果为校验通过,则将埋点数据进行上报。
S520、若校验结果为校验未通过,则获取对比结果集合中的错误信息,并将错误信息进行输出。
在本申请实施例中,根据校验结果可以获知是否校验成功,若校验结果为校验通过,则按照业务系统埋点上报流程将埋点数据通过业务系统中的埋点上报模块进行上报。
若校验结果为未通过,则会结合业务系统当前所处环境进行相应的处理,若业务系统处于开发或者测试环境下,会将反馈的错误信息输出在控制台,因为在开发或者测试阶段,通过控制台的输出信息可以更方便地对应用程序进行相应修正。
若业务系统处于软件系统的生成环境下,说明已经完成了相应的开发,这个时候可通过软件系统内的异常上报模块,将错误信息提交到异常监控系统中,通过异常监控系统,开发人员可以实时获取到异常错误信息,并将错误记录下来,或者根据错误信息进行相应修正,为下次软件更新修复做好准备。
由此可以看出,不管是在开发测试阶段或者是在软件系统的生成阶段,都可以实现开发人员自己发现问题并解决问题。
本申请实施例还提供一种埋点校验系统,参见图5,该系统包括:埋点数据获取模块101、初始化模块102、埋点规则获取模块103、埋点校验模块104。
其中,埋点数据获取模块101用于对业务系统设置监听,当监听到触发埋点上报时,获取传入参数,所述传入参数包括埋点配置ID和埋点数据对象。
初始化模块102用于初始化预设埋点配置规则管理器,所述预设埋点配置规则管理器中存储有埋点配置规则数据。
埋点规则获取模块103用于根据埋点配置ID,从预设埋点配置规则管理器中获取埋点配置规则。
埋点校验模块104用于根据埋点配置规则校验埋点数据对象,返回埋点校验结果,并将校验结果反馈到业务系统。
在本申请实施例中,埋点数据获取模块101具体用于对业务系统设置监听,当监听到触发埋点上报时,则开始为埋点校验作准备,即获取埋点收集的数据和相应的埋点配置规则。
初始化模块具体102用于初始化预设埋点配置规则管理器,对埋点配置规则进行分离存储,并将埋点配置规则对应文件拷贝输出到编译结果目录中,和系统源码编译结果一并发布到生产环境,使得系统生产环境的编译结果可以直接访问对应埋点配置规则文件,并且还可以将埋点配置文件的访问地址,同步给相关方,让相关方可直接基于访问地址访问埋点配置文件,提升整个埋点上报业务体系的信息同步效率。
埋点规则获取模块103具体用于根据埋点配置ID,从预设埋点配置规则管理器中获取埋点配置规则,也就是在触发埋点上报时,会根据埋点收集数据,获取与埋点数据对应的埋点配置规则,从而对埋点数据进行校验。
埋点校验模块104具体用于根据埋点配置规则校验埋点数据对象,会基于埋点数据对象的属性数据结构、数据类型等进行逐一比对校验,并将校验过程记录在日志文件中,并将校验过程中的错误信息同日志文件一同作为校验结果反馈到业务系统,业务系统再根据校验结果进行相应处理。
本申请实施例还提供一种计算机可读存储介质,存储有能够被处理器加载并执行上述一种埋点校验方法的计算机程序。
本具体实施方式的实施例均为本申请的较佳实施例,并非依此限制本申请的保护范围,故:凡依本申请的原理所做的等效变化,均应涵盖于本申请的保护范围之内。
Claims (10)
1.一种埋点校验方法,其特征在于,包括:
对业务系统设置监听,当监听到触发埋点上报时,获取传入参数,所述传入参数包括埋点配置ID和埋点数据对象;
初始化预设埋点配置规则管理器,所述预设埋点配置规则管理器中存储有埋点配置规则数据;
根据埋点配置ID,从预设埋点配置规则管理器中,获取对应的埋点配置规则;
根据埋点配置规则校验埋点数据对象,返回埋点校验结果,并将校验结果反馈到业务系统。
2.根据权利要求1所述的一种埋点校验方法,其特征在于,所述初始化预设埋点配置规则管理器,包括:
对埋点配置规则数据进行拆分,以形成多个与埋点配置规则一一对应的JSON文件;
将埋点配置规则对应的JSON文件拷贝输出到业务系统源码编译结果目录中,以将埋点配置规则和系统源码编译结果一并发布到生产环境。
3.根据权利要求1所述的一种埋点校验方法,其特征在于,所述根据埋点配置ID,从预设埋点配置规则管理器中,获取对应的埋点配置规则,包括:
根据埋点配置ID,从预设埋点配置规则管理器中获取埋点配置规则对应的JSON文件;
解析JSON文件,获取埋点配置规则。
4.根据权利要求1所述的一种埋点校验方法,其特征在于,所述根据埋点配置规则校验埋点数据对象,返回埋点校验结果,包括:
将埋点数据对象中的属性根据埋点配置规则一一进行对比,并获取对比结果集合;
根据对比结果集合,获取埋点校验结果。
5.根据权利要求4所述的一种埋点校验方法,其特征在于,所述埋点数据对象包括属性名称和对应参数值,所述根据埋点配置规则校验埋点数据对象之前,还包括:
获取并计算埋点配置规则中参数数量;
判断埋点数据对象内的属性数量是否和配置规则中的参数数量相同,
若不是,则输出校验结果不通过提示信息;
若是,根据埋点配置规则校验埋点数据对象。
6.根据权利要求5所述的一种埋点校验方法,其特征在于,所述将埋点数据对象中的属性根据埋点配置规则一一进行对比,并获取对比结果集合,包括:
依次根据埋点数据对象的属性名称,从埋点配置规则中匹配出对应的规则内容;
判断埋点数据对象的当前属性对应参数值是否符合对应的规则内容;
若否,记该属性的对比结果为校验失败,并将该属性名称以及对应参数值记为错误信息;
若是,记该属性的对比结果为校验成功;
根据埋点数据对象中的各属性对比结果和对应的错误信息,形成对比结果集合。
7.根据权利要求6所述的一种埋点校验方法,其特征在于,所述规则内容,包括字面量规则、枚举规则和固定值规则,所述判断埋点数据对象的属性对应参数值是否符合对应的规则内容,包括:
根据规则内容,确定属性对应参数值的数据结构、数据类型和取值范围;
基于数据结构、数据类型和取值范围,来判断属性对应参数值是否符合规范。
8.根据权利要求4所述的一种埋点校验方法,其特征在于,所述将校验结果反馈到业务系统之后,还包括:
若校验结果为校验通过,则将埋点数据进行上报;
若校验结果为校验未通过,则获取对比结果集合中的错误信息,并将错误信息进行输出。
9.一种埋点校验系统,其特征在于,包括:
埋点数据获取模块(101),用于对业务系统设置监听,当监听到触发埋点上报时,获取传入参数,所述传入参数包括埋点配置ID和埋点数据对象;
初始化模块(102),用于初始化预设埋点配置规则管理器,所述预设埋点配置规则管理器中存储有埋点配置规则数据;
埋点规则获取模块(103),用于根据埋点配置ID,从预设埋点配置规则管理器中获取埋点配置规则;
埋点校验模块(104),用于根据埋点配置规则校验埋点数据对象,返回埋点校验结果,并将校验结果反馈到业务系统。
10.一种计算机可读存储介质,存储有能够被处理器加载并执行如权利要求1至8任一项所述的一种埋点校验方法的计算机程序。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202211378890.0A CN115776508A (zh) | 2022-11-04 | 2022-11-04 | 一种埋点校验方法及系统 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202211378890.0A CN115776508A (zh) | 2022-11-04 | 2022-11-04 | 一种埋点校验方法及系统 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN115776508A true CN115776508A (zh) | 2023-03-10 |
Family
ID=85388756
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202211378890.0A Pending CN115776508A (zh) | 2022-11-04 | 2022-11-04 | 一种埋点校验方法及系统 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN115776508A (zh) |
-
2022
- 2022-11-04 CN CN202211378890.0A patent/CN115776508A/zh active Pending
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN110309071B (zh) | 测试代码的生成方法及模块、测试方法及系统 | |
CN109947646A (zh) | 接口测试方法、装置、计算机设备和存储介质 | |
CN107992409A (zh) | 测试用例生成方法、装置、计算机设备和存储介质 | |
CN109254907B (zh) | 一种基于Java的接口测试报告生成方法及系统 | |
CN108628748B (zh) | 自动化测试管理方法和自动化测试管理系统 | |
CN106844730B (zh) | 文件内容的显示方法及装置 | |
US20070011541A1 (en) | Methods and systems for identifying intermittent errors in a distributed code development environment | |
JP2735698B2 (ja) | インタフェース検証処理方式 | |
CN110088744A (zh) | 一种数据库维护方法及其系统 | |
CN112540924A (zh) | 接口自动化测试方法、装置、设备及存储介质 | |
Balliu et al. | Challenges of producing software bill of materials for java | |
US11327720B2 (en) | Automated generation of software bindings | |
CN112579437B (zh) | 一种程序运行过程符合性验证方法 | |
CN111858658A (zh) | 数据采集方法、装置、设备及存储介质 | |
CN112579461A (zh) | 断言处理方法、系统和存储介质 | |
JP5045517B2 (ja) | 設計書作成プログラム、該装置、及び該方法 | |
CN114035789A (zh) | 日志解析模板的生成方法、日志解析方法、装置及设备 | |
CN117493188A (zh) | 接口测试方法及装置、电子设备及存储介质 | |
CN111552648A (zh) | 用于应用的自动验证方法和系统 | |
CN112015715A (zh) | 工业互联网数据管理服务测试方法及系统 | |
CN117236304A (zh) | 一种基于模板配置的Excel通用导入的实现方法 | |
KR101415528B1 (ko) | 분산된 시스템을 위한 데이터 오류 처리 장치 및 방법 | |
CN115776508A (zh) | 一种埋点校验方法及系统 | |
CN115455059A (zh) | 一种基于底层数据解析用户行为的方法、装置及相关介质 | |
CN111639478B (zh) | 一种基于excel文档的数据自动稽核方法及系统 |
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 |