CN112650659A - 埋点设置方法、装置、计算机设备和存储介质 - Google Patents
埋点设置方法、装置、计算机设备和存储介质 Download PDFInfo
- Publication number
- CN112650659A CN112650659A CN202011528574.8A CN202011528574A CN112650659A CN 112650659 A CN112650659 A CN 112650659A CN 202011528574 A CN202011528574 A CN 202011528574A CN 112650659 A CN112650659 A CN 112650659A
- Authority
- CN
- China
- Prior art keywords
- page
- information
- specified
- buried point
- user
- 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
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/34—Recording or statistical evaluation of computer activity, e.g. of down time, of input/output operation ; Recording or statistical evaluation of user activity, e.g. usability assessment
- G06F11/3438—Recording or statistical evaluation of computer activity, e.g. of down time, of input/output operation ; Recording or statistical evaluation of user activity, e.g. usability assessment monitoring of user actions
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/30—Monitoring
- G06F11/34—Recording or statistical evaluation of computer activity, e.g. of down time, of input/output operation ; Recording or statistical evaluation of user activity, e.g. usability assessment
- G06F11/3466—Performance evaluation by tracing or monitoring
- G06F11/3476—Data logging
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/30—Monitoring
- G06F11/34—Recording or statistical evaluation of computer activity, e.g. of down time, of input/output operation ; Recording or statistical evaluation of user activity, e.g. usability assessment
- G06F11/3466—Performance evaluation by tracing or monitoring
- G06F11/349—Performance evaluation by tracing or monitoring for interfaces, buses
Landscapes
- Engineering & Computer Science (AREA)
- General Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Computer Hardware Design (AREA)
- Quality & Reliability (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- User Interface Of Digital Computer (AREA)
Abstract
本申请涉及数据处理领域,提供一种埋点设置方法、装置、计算机设备和存储介质,方法包括:当接收到用户输入的埋点请求时,判断用户是否具备埋点设置权限;若是,获取指定页面并展示;当接收到用户在指定页面内触发的点击操作时,获取点击位置信息,基于点击位置信息确定指定页面控件元素;在当前界面展示埋点信息填充窗口;接收输入的埋点信息;对埋点信息进行参数校验处理,判断是否校验通过;若是,基于代码模板与埋点信息生成指定埋点代码;获取控件代码,将指定埋点代码添加至控件代码内。本申请能够智能快速地完成页面的埋点设置,提高了埋点开发的处理效率。本申请还可以应用于区块链领域,上述指定埋点代码等数据可以存储于区块链上。
Description
技术领域
本申请涉及数据处理技术领域,具体涉及一种埋点设置方法、装置、计算机设备和存储介质。
背景技术
随着移动终端的普及,涌现出多种多样的应用程序。通过在应用程序中设置埋点,可以对用户的行为数据进行分析,这为应用程序的改进和升级提供了重要参考。在传统的方式中,对应用程序设置埋点时,通常是由产品经理提出埋点需求,以表格的形式将埋点需求表格提交给开发人员,开发人员根据表格中埋点字段进行相应的埋点设置。现有的埋点设置方法需要产品经理与开发人员之间的配合操作,且开发人员需关注埋点需求表格中的所有参数信息,在与产品经理进行埋点需求相关的沟通后,再基于该参数信息来编写相应的埋点代码以完成埋点开发,开发人员的工作量大。因此,现有的埋点设置方法存在耗时耗力、沟通成本高、智能性较低的问题。
发明内容
本申请的主要目的为提供一种埋点设置方法、装置、计算机设备和存储介质,旨在解决现有的埋点设置方法存在耗时耗力、沟通成本高、智能性较低的技术问题。
本申请提出一种埋点设置方法,所述方法包括步骤:
当接收到用户输入的埋点请求时,从所述埋点请求中解析出用户信息,并基于所述用户信息判断所述用户是否具备埋点设置权限,其中,所述埋点请求内携带有应用页面信息与用户信息;
若所述用户具备埋点处理权限,则从所述埋点请求中解析出所述应用页面信息,获取与所述页面应用信息对应的指定页面,并在当前界面展示所述指定页面,其中,所述指定页面包括多个页面控件元素,所述指定页面属于指定应用程序内的页面;
当接收到所述用户在所述指定页面内触发的点击操作时,获取与所述点击操作对应的点击位置信息,并基于所述点击位置信息确定出对应的指定页面控件元素;
在当前界面展示与所述指定页面控件元素对应的埋点信息填充窗口,其中,所述埋点信息填充窗口包括多个埋点字段以及对应的输入框,所述埋点字段包括必填字段与可选字段;
接收所述用户在所述输入框内输入的埋点信息;
对所述埋点信息进行参数校验处理,并判断是否校验通过;
若校验通过,则基于预设的代码模板与所述埋点信息,生成与所述指定页面控件元素对应的指定埋点代码;
获取与所述指定应用程序中所述指定页面控件元素对应的控件代码,并将所述指定埋点代码添加至所述控件代码内。
可选地,所述基于所述点击位置信息确定出对应的指定页面控件元素的步骤,包括:
获取与所述指定页面包含的所有页面控件元素一一对应的指定坐标集合;
获取所有所述指定坐标集合的数量值;
创建与所述数量值相同的多个线程,为所述指定坐标集合与所述线程建立一一对应的关系,并将各所述指定坐标集合分别发送至对应的线程内;
获取与所述点击位置信息对应的坐标信息;
将所述坐标信息分别发送至各所述线程,以及将并行数据匹配指令发送至各所述线程;
通过各所述线程,基于所述并行数据匹配指令分别执行所述坐标信息与内部的指定坐标集合包含的所有坐标的匹配处理,得到对应的匹配结果,其中,所述匹配结果包括匹配通过与匹配失败;
从所有所述匹配结果中筛选出匹配成功的指定匹配结果;
获取与所述指定匹配结果对应的目标页面控件元素;
将所述目标页面控件元素确定为所述指定页面控件元素。
可选地,所述获取与所述指定页面包含的所有页面控件元素一一对应的指定坐标集合的步骤之前,包括:
分别获取各所述页面控件元素包含的坐标集合;以及,
获取预设的参数范围值;
基于所述参数范围值,对各所述坐标集合进行坐标扩展处理,得到对应的处理后的坐标集合;
将所述处理后的坐标集合确定为所述指定坐标集合;
存储所述指定坐标集合。
可选地,所述基于预设的代码模板与所述埋点信息,生成与所述指定页面控件元素对应的指定埋点代码的步骤,包括:
获取与所述指定页面控件元素对应的预设的代码模板,其中,所述代码模板中包括与所有所述埋点字段对应的代码数据;
基于所述用户输入的所述埋点信息,判断在所有所述输入框中是否存在未填写有信息的空白输入框;
若在所有所述输入框中存在未填写有信息的空白输入框,则获取与所述空白输入框对应的特殊埋点字段;
基于所述特殊埋点字段,从所述代码模板内删除与所述特殊埋点字段对应的特殊代码数据,得到修改后的代码模板;
将所述埋点信息填充至所述修改后的代码模板中的对应位置处,得到填充后的代码模板;
将所述填充后的代码模板确定为所述指定埋点代码。
可选地,所述获取与所述页面应用信息对应的指定页面的步骤,包括:
对所述应用页面信息进行解析处理,从所述应用页面信息中提取出对应的指定应用信息与指定页面信息;
基于所述指定应用信息与所述指定页面信息,生成对应的页面获取请求;
将所述页面获取请求发送至预设的页面数据库,以使得所述页面数据库基于所述页面获取请求中携带的所述指定应用信息与所述指定页面信息,对内部存储的所有页面进行查询处理,查找出与所述页面获取请求对应的目标页面;
接收所述页面数据库返回的所述目标页面,并将所述目标页面作为所述指定页面。
可选地,所述基于所述用户信息判断所述用户是否具备埋点设置权限的步骤,包括:
调用预设的分类树模型;
通过所述分类树模型确定出与所述用户信息对应的用户角色类别,并基于预设的类别与权限等级的对应关系,确定出与所述用户信息的类别对应的指定权限等级;
基于预设的业务操作权限表,获取与埋点设置的业务操作对应的埋点设置权限等级;
判断所述指定等级权限是否小于所述埋点设置权限等级;
若所述指定等级权限小于所述埋点设置权限等级,则判定所述用户不具备埋点设置权限;
若所述指定等级权限不小于所述埋点设置权限等级,则判定所述用户具备埋点设置权限。
可选地,所述获取与所述指定应用程序中所述指定页面控件元素对应的控件代码,并将所述指定埋点代码嵌入至所述控件代码内的步骤之后,包括:
获取与具有埋点设置需求的所有特定页面控件元素对应的所有特定埋点信息;
根据所述特定埋点信息,生成对应的埋点参数文件;
生成所述埋点参数文件的埋点版本号,并以所述埋点版本号作为所述埋点参数文件的文件名称;
存储所述埋点参数文件。
本申请还提供一种埋点设置装置,包括:
判断模块,用于当接收到用户输入的埋点请求时,从所述埋点请求中解析出用户信息,并基于所述用户信息判断所述用户是否具备埋点设置权限,其中,所述埋点请求内携带有应用页面信息与用户信息;
第一获取模块,用于若所述用户具备埋点处理权限,则从所述埋点请求中解析出所述应用页面信息,获取与所述页面应用信息对应的指定页面,并在当前界面展示所述指定页面,其中,所述指定页面包括多个页面控件元素,所述指定页面属于指定应用程序内的页面;
确定模块,用于当接收到所述用户在所述指定页面内触发的点击操作时,获取与所述点击操作对应的点击位置信息,并基于所述点击位置信息确定出对应的指定页面控件元素;
展示模块,用于在当前界面展示与所述指定页面控件元素对应的埋点信息填充窗口,其中,所述埋点信息填充窗口包括多个埋点字段以及对应的输入框,所述埋点字段包括必填字段与可选字段;
接收模块,用于接收所述用户在所述输入框内输入的埋点信息;
校验模块,用于对所述埋点信息进行参数校验处理,并判断是否校验通过;
第一生成模块,用于若校验通过,则基于预设的代码模板与所述埋点信息,生成与所述指定页面控件元素对应的指定埋点代码;
添加模块,用于获取与所述指定应用程序中所述指定页面控件元素对应的控件代码,并将所述指定埋点代码添加至所述控件代码内。
本申请中提供的埋点设置方法、装置、计算机设备和存储介质,具有以下有益效果:
本申请中提供的埋点设置方法、装置、计算机设备和存储介质,当具备埋点设置权限的用户具有埋点需求时,通过在界面展示与数据埋点对应的页面,并提供与用户在该页面的点击操作所对应的指定页面控件元素的埋点信息填充窗口,以便用户在该埋点信息填充窗口内填入相关的埋点信息,进而可根据该埋点信息快捷地生成对应的指定埋点代码,最后将该指定埋点代码嵌入至所述指定页面控件元素对应的控件代码内以实现智能快速地完成页面的埋点设置处理,有效地提高了埋点设置的处理效率,降低了开发人员的工作量和沟通成本。
附图说明
图1是本申请一实施例的埋点设置方法的流程示意图;
图2是本申请一实施例的埋点设置装置的结构示意图;
图3是本申请一实施例的计算机设备的结构示意图。
本申请目的的实现、功能特点及优点将结合实施例,参照附图做进一步说明。
具体实施方式
应当理解,此处所描述的具体实施例仅仅用于解释本申请,并不用于限定本申请。
本技术领域技术人员可以理解,除非特意声明,这里使用的单数形式“一”、“一个”、“所述”和“该”也可包括复数形式。应该进一步理解的是,本发明的说明书中使用的措辞“包括”是指存在所述特征、整数、步骤、操作、元件和/或组件,但是并不排除存在或添加一个或多个其他特征、整数、步骤、操作、元件、组件和/或它们的组。应该理解,当我们称元件被“连接”或“耦接”到另一元件时,它可以直接连接或耦接到其他元件,或者也可以存在中间元件。此外,这里使用的“连接”或“耦接”可以包括无线连接或无线耦接。这里使用的措辞“和/或”包括一个或更多个相关联的列出项的全部或任一单元和全部组合。
本技术领域技术人员可以理解,除非另外定义,这里使用的所有术语(包括技术术语和科学术语),具有与本发明所属领域中的普通技术人员的一般理解相同的意义。还应该理解的是,诸如通用字典中定义的那些术语,应该被理解为具有与现有技术的上下文中的意义一致的意义,并且除非像这里一样被特定定义,否则不会用理想化或过于正式的含义来解释。
参照图1,本申请一实施例的埋点设置方法,包括:
S1:当接收到用户输入的埋点请求时,从所述埋点请求中解析出用户信息,并基于所述用户信息判断所述用户是否具备埋点设置权限,其中,所述埋点请求内携带有应用页面信息与用户信息;
S2:若所述用户具备埋点处理权限,则从所述埋点请求中解析出所述应用页面信息,获取与所述页面应用信息对应的指定页面,并在当前界面展示所述指定页面,其中,所述指定页面包括多个页面控件元素,所述指定页面属于指定应用程序内的页面;
S3:当接收到所述用户在所述指定页面内触发的点击操作时,获取与所述点击操作对应的点击位置信息,并基于所述点击位置信息确定出对应的指定页面控件元素;
S4:在当前界面展示与所述指定页面控件元素对应的埋点信息填充窗口,其中,所述埋点信息填充窗口包括多个埋点字段以及对应的输入框,所述埋点字段包括必填字段与可选字段;
S5:接收所述用户在所述输入框内输入的埋点信息;
S6:对所述埋点信息进行参数校验处理,并判断是否校验通过;
S7:若校验通过,则基于预设的代码模板与所述埋点信息,生成与所述指定页面控件元素对应的指定埋点代码;
S8:获取与所述指定应用程序中所述指定页面控件元素对应的控件代码,并将所述指定埋点代码添加至所述控件代码内。
如上述步骤S1至S8所述,本方法实施例的执行主体为一种埋点设置装置。在实际应用中,上述埋点设置装置可以通过虚拟装置,例如软件代码实现,也可以通过写入或集成有相关执行代码的实体装置实现,且可以与用户通过键盘、鼠标、遥控器、触摸板或声控设备等方式进行人机交互。本实施例中的埋点设置装置,能够实现智能快速地完成页面的埋点设置处理,有效地提高了埋点设置的处理效率,降低了开发人员的工作量。具体地,当接收到用户输入的埋点请求时,从上述埋点请求中解析出用户信息,并基于上述用户信息判断上述用户是否具备埋点设置权限,其中,上述埋点请求内携带有应用页面信息与用户信息,上述应用页面信息具体可包括指定应用信息与指定页面信息。另外,埋点为开发人员的描述术语,具体是指在某个地方设置一段埋点代码,以便系统通过这段埋点代码去获取日志记录。比如要记录用户修改某系统信息的操作过程,该修改是通过点击“修改”按钮来提交修改信息的,那么就需要在该“修改”按钮的点击操作实现代码内添加一段埋点代码,设置需要捕获哪些数据,系统就会自动接受这些数据并保存在系统里面,这样后续就可以查询用户修改某系统信息的操作信息了。如果上述用户具备埋点处理权限,则从上述埋点请求中解析出上述应用页面信息,获取与上述页面应用信息对应的指定页面,并在当前界面展示上述指定页面,其中,上述指定页面包括多个页面控件元素,上述页面控件元素可包括图标、图片、文字、按钮等元素,上述指定页面属于指定应用程序内的页面。另外,可以基于上述应用页面信息,从预设的页面数据库中查询出上述指定页面。当接收到上述用户在上述指定页面内触发的点击操作时,获取与上述点击操作对应的点击位置信息,并基于上述点击位置信息确定出对应的指定页面控件元素。其中,可以先获取与该点击位置信息对应的坐标信息,再基于该坐标信息,从指定页面包含的所有页面控件元素所对应的坐标集合中查询出包含该坐标信息的目标坐标集合,进而将该目标坐标集合对应的目标页面控件元素作为上述指定页面控件元素。然后在当前界面展示与上述指定页面控件元素对应的埋点信息填充窗口,其中,上述埋点信息填充窗口包括多个埋点字段以及对应的输入框,上述埋点字段包括必填字段与可选字段。另外,通过将埋点字段定义成必填字段和可选字段,可以避免用户任意扩展埋点字段,保证埋点字段的规范性标准。必填字段为埋点的标志字段,用以区分不同的埋点,为静态值。可选字段往往是参数,用来区分使用者的具体行为。为了使埋点规范化,将可选字段定义为固定枚举类型集合,也就是说用户需要确定是否需要使用可选字段,且使用可选字段时需要从预设的可选字段中选择,而不能随意定义字段名。举例地,必填字段可包括title、category、click。可选字段可包括product_id、invest_id、book_id、product_type、customer_base、amount等。此外,对于必填字段可添加对应的必填标志码,以提醒用户必须填充与必填字段对应的字段信息,以及对可选字段可添加对应的选填标志码,以提醒用户可以根据实际需求选择性填写或不填与可选字段对应的信息。之后接收上述用户在上述输入框内输入的埋点信息。其中,埋点信息与埋点字段具有对应关系,即埋点信息为输入的对应于埋点字段的信息。另外,在用户输入埋点信息完毕后,还可对该埋点信息进行修改处理。具体的,在用户提交了埋点信息的填写完毕信息后,还可生成确认信息,以提醒用户对填入的埋点信息进行信息的准确性确认。如果收到用户对于该确认信息的确认操作,则将该埋点信息用于进行后续的埋点处理的信息。而如果收到用户对于该确认信息的取消操作,则将用户修改后的埋点信息用于进行后续的埋点处理的信息。在得到了上述埋点信息后,对上述埋点信息进行参数校验处理,并判断是否校验通过。其中,上述对上述埋点信息进行参数校验处理的过程可包括:获取上述输入框中与各上述必填字段分别对应的必填输入框;判断各上述必填输入框中是否均填写有数据;若各上述必填输入框中均填写有数据,则判定通过校验;若各上述必填输入框中未均填写有数据,则判定未通过校验,并返回错误信息。上述错误信息包括与未填写有数据事件对应的错误码,通过返回该错误信息以使得用户重新输入正确的埋点信息。另外,在用户输入了埋点信息后,通过对该埋点信息进行参数校验处理,以保证输入的埋点信息的具有数据规范性,进而能够基于规范的埋点信息来精确地实现后续的埋点设置处理。如果校验通过,则基于预设的代码模板与上述埋点信息,生成与上述指定页面控件元素对应的指定埋点代码。其中,上述代码模板可由开发人员根据实际使用需求编写生成的包含有必填字段与可选字段的相关代码的模板文件,且该埋点代码模板中的必填字段的变量参数为待填充状态。具体可基于该埋点信息对与上述指定页面控件元素对应的代码模板进行相应的代码数据删除处理与信息填充处理以生成上述指定埋点代码。最后获取与上述指定应用程序中上述指定页面控件元素对应的控件代码,并将上述指定埋点代码添加至上述控件代码内。本实施例当具备埋点设置权限的用户具有埋点需求时,通过在界面展示与数据埋点对应的页面,并提供与用户在该页面的点击操作所对应的指定页面控件元素的埋点信息填充窗口,以便用户在该埋点信息填充窗口内填入相关的埋点信息,进而可根据该埋点信息快捷地生成对应的指定埋点代码,最后将该指定埋点代码嵌入至上述指定页面控件元素对应的控件代码内。其中,埋点代码是指嵌入到应用程序客户端的用于收集用户行为数据的程序代码,通过埋点代码可以获取到埋点代码捕获的用于用户行为信息分析的数据。另外,还可先发送上述指定埋点代码至预设的软件开发工具,再通过上述软件开发工具将上述埋点代码嵌入至与上述指定应用程序中的上述指定页面控件元素对应的控件代码内,以完成页面的埋点设置处理。本实施例当具备埋点设置权限的用户具有埋点需求时,通过在界面展示与数据埋点对应的页面,并提供与用户在该页面的点击操作所对应的指定页面控件元素的埋点信息填充窗口,以便用户在该埋点信息填充窗口内填入相关的埋点信息,进而可根据该埋点信息快捷地生成对应的指定埋点代码,最后将该指定埋点代码嵌入至上述指定页面控件元素对应的控件代码内以实现智能快速地完成页面的埋点设置处理,有效地提高了埋点设置的处理效率,降低了开发人员的工作量和沟通成本。
进一步地,本申请一实施例中,上述步骤S3中的基于所述点击位置信息确定出对应的指定页面控件元素的步骤,包括:
S300:获取与所述指定页面包含的所有页面控件元素一一对应的指定坐标集合;
S301:获取所有所述指定坐标集合的数量值;
S302:创建与所述数量值相同的多个线程,为所述指定坐标集合与所述线程建立一一对应的关系,并将各所述指定坐标集合分别发送至对应的线程内;
S303:获取与所述点击位置信息对应的坐标信息;
S304:将所述坐标信息分别发送至各所述线程,以及将并行数据匹配指令发送至各所述线程;
S305:通过各所述线程,基于所述并行数据匹配指令分别执行所述坐标信息与内部的指定坐标集合包含的所有坐标的匹配处理,得到对应的匹配结果,其中,所述匹配结果包括匹配通过与匹配失败;
S306:从所有所述匹配结果中筛选出匹配成功的指定匹配结果;
S307:获取与所述指定匹配结果对应的目标页面控件元素;
S308:将所述目标页面控件元素确定为所述指定页面控件元素。
如上述步骤S300至S308所述,上述基于上述点击位置信息确定出对应的指定页面控件元素的步骤,具体可包括:首先获取与上述指定页面包含的所有页面控件元素一一对应的指定坐标集合。其中,所有页面控件元素中包含的任意一个特殊页面控件元素均会对应有一个坐标集合,坐标集合中包含有与特殊页面控件元素对应的至少一个特殊坐标,当用户触发的点击操作对应的点击位置信息为上述特殊坐标时,则可判定用户当前点击了与该特殊坐标对应的特殊页面控件元素。另外,上述指定坐标集合是对页面控件元素中包含的坐标集合进行坐标扩展处理后生成的。并获取所有上述指定坐标集合的数量值。然后创建与上述数量值相同的多个线程,为上述指定坐标集合与上述线程建立一一对应的关系,并将各上述指定坐标集合分别发送至对应的线程内。其中,当获取到与所有上述指定坐标集合的数量值,通过采用立即创建与该数量值相同的多个线程,而不会预先在装置内预创建一些备用线程,虽然线程的创建过程会消耗一些时间,但能够避免预创建的备用线程占用系统CPU与内存,增加系统不必要的损耗。另外,在各线程完成了数据匹配工作后,会立即对该线程进行销毁处理以释放系统的存储空间,避免残留的线程在系统内产生不必要的损耗。之后获取与上述点击位置信息对应的坐标信息。在得到了上述坐标信息后,将上述坐标信息分别发送至各上述线程,以及将并行数据匹配指令发送至各上述线程。其中,上述并行数据匹配指令具体可为单指令流多数据流(single instruction multiple data,SIMD)指令。通过各上述线程,基于上述并行数据匹配指令分别执行上述坐标信息与内部的指定坐标集合包含的所有坐标的匹配处理,得到对应的匹配结果,其中,上述匹配结果包括匹配通过与匹配失败。在获得了上述匹配结果后,从所有上述匹配结果中筛选出匹配成功的指定匹配结果。其中,当存在与上述坐标信息相同的坐标时,则会生成匹配成功的匹配结果。最后获取与上述指定匹配结果对应的目标页面控件元素,并将上述目标页面控件元素确定为上述指定页面控件元素。本实施例在基于与上述点击位置信息对应的坐标信息确定出对应的指定页面控件元素的过程中,采用多线程并行处理的方式同时将该坐标信息与指定页面包含的所有页面控件元素分别对应的指定坐标集合进行匹配,以及使用并行匹配指令的并行匹配能力同时将该坐标信息与指定坐标集合中的包含的每一个坐标进行匹配处理,从而可以有效地提高坐标匹配的处理速率,进而迅速地生成上述坐标信息与每一个坐标的匹配结果,有利于后续能够根据该匹配信息快速地查找出上述指定页面控件元素。进一步地,在获得了匹配成功的指定匹配结果后,可对该指定匹配结果进行特殊标记处理,且如果在获取了上述指定匹配结果后,还存在处于匹配进行状态中的匹配任务,则会立即停止执行该匹配任务,以减少系统不必要的损耗。
进一步地,本申请一实施例中,上述步骤S300之前,包括:
S3000:分别获取各所述页面控件元素包含的坐标集合;以及,
S3001:获取预设的参数范围值;
S3002:基于所述参数范围值,对各所述坐标集合进行坐标扩展处理,得到对应的处理后的坐标集合;
S3003:将所述处理后的坐标集合确定为所述指定坐标集合;
S3004:存储所述指定坐标集合。
如上述步骤S3000至S3004所述,在执行上述获取与上述指定页面包含的所有页面控件元素一一对应的指定坐标集合的步骤之前,还可包括创建上述指定坐标集合的创建步骤。具体地,首先分别获取各上述页面控件元素包含的坐标集合。其中,所有页面控件元素中包含的任意一个特殊页面控件元素均会对应有一个坐标集合,坐标集合中包含有与特殊页面控件元素对应的至少一个特殊坐标。以及获取预设的参数范围值。其中,对于上述参数范围值不作具体限定,可根据实际需求进行设置。例如可将上述参数范围值设置为5像素。然后基于上述参数范围值,对各上述坐标集合进行坐标扩展处理,得到对应的处理后的坐标集合。举例地,当上述参数范围值设置为5像素时,上述坐标扩展处理可包括:分别将坐标集合中最大的横纵坐标值皆增加5像素的参数数值,以及分别将坐标集合中最小的横纵坐标值皆减小5像素的参数数值,以实现对于坐标集合的扩展。之后将上述处理后的坐标集合确定为上述指定坐标集合。最后在得到了上述指定坐标集合后,再存储上述指定坐标集合。其中,对于上述指定坐标集合的存储方式不作具体限定,可将该指定坐标集合存储于区块链上,通过使用区块链来对上述指定坐标集合进行存储和管理,能够有效地保证上述指定坐标集合的安全性与不可篡改性。本实施例在当前界面展示上述指定页面时,当出现用户在展示的上述指定页面内触发的点击操作所对应的点击位置信息处于相邻的两个页面控件元素的空隙处的情况时,为了保证用户点击相邻的两个页面控件元素的空隙时能够准确地区分出上述空隙从属于哪一个页面控件元素的区域,通过基于预设的参数范围值来对各上述页面控件元素包含的坐标集合进行坐标扩展处理以生成处理后的指定坐标集合,以使得后续能够基于该指定坐标集合来确定出与上述点击位置信息对应的指定页面控件元素,有效地保证了获得的上述指定页面控件元素的准确性。
进一步地,本申请一实施例中,上述步骤S7,包括:
S700:获取与所述指定页面控件元素对应的预设的代码模板,其中,所述代码模板中包括与所有所述埋点字段对应的代码数据;
S701:基于所述用户输入的所述埋点信息,判断在所有所述输入框中是否存在未填写有信息的空白输入框;
S702:若在所有所述输入框中存在未填写有信息的空白输入框,则获取与所述空白输入框对应的特殊埋点字段;
S703:基于所述特殊埋点字段,从所述代码模板内删除与所述特殊埋点字段对应的特殊代码数据,得到修改后的代码模板;
S704:将所述埋点信息填充至所述修改后的代码模板中的对应位置处,得到填充后的代码模板;
S705:将所述填充后的代码模板确定为所述指定埋点代码。
如上述步骤S700至S705所述,上述基于预设的代码模板与上述埋点信息,生成与上述指定页面控件元素对应的指定埋点代码的步骤,包括:首先获取与上述指定页面控件元素对应的预设的代码模板,其中,上述代码模板中包括与所有上述埋点字段对应的代码数据。另外,对于指定页面中的每一个页面控件元素,会预先设置有与页面控件元素对应的埋点代码模板,可简称为代码模板。该埋点代码模板可由开发人员根据实际使用需求编写生成的包含有必填字段与可选字段的相关代码的模板文件,且该埋点代码模板中的必填字段的变量参数为待填充状态,以及可选字段的变量参数也是待填充状态。然后基于上述用户输入的上述埋点信息,判断在所有上述输入框中是否存在未填写有信息的空白输入框。如果在所有上述输入框中存在未填写有信息的空白输入框,则获取与上述空白输入框对应的特殊埋点字段。其中,如果存在空白输入框,则表明用户没有对埋点信息填充窗口中的所有可选字段均填入相应的字段信息,即用户在埋点设置中不需要使用到与该空白输入框对应的特殊埋点字段,自然也不需要输入与该特殊埋点字段对应的字段信息,因而会出现上述空白输入框。之后基于上述特殊埋点字段,从上述代码模板内删除与上述特殊埋点字段对应的特殊代码数据,得到修改后的代码模板。在得到了上述修改后的代码模板后,将上述埋点信息填充至上述修改后的代码模板中的对应位置处,得到填充后的代码模板。其中,可从所有可选字段中先筛选出具有填充信息的指定可选字段,然后从代码模板中查找出与必选字段对应的第一字段信息填充位置,以及查找出与上述指定可选字段对应的第二字段信息填充位置,之后将埋点信息中与必选字段对应的第一字段信息对应填充至上述第一字段信息填充位置内,以及将埋点信息中与尚书省指定可选字段对应的第二字段信息填充至上述第二字段信息填充位置内,以生成上述填充后的代码模板。最后将上述填充后的代码模板确定为上述指定埋点代码。本实施例在接收到用户输入的埋点信息后,会基于该埋点信息对与上述指定页面控件元素对应的代码模板进行相应的代码数据删除处理与信息填充处理,以实现智能快速地生成与上述指定页面控件元素对应的指定埋点代码,从而可以有效减少开发人员的工作量,提高埋点代码的生成效率。
进一步地,本申请一实施例中,上述步骤S2中的获取与所述页面应用信息对应的指定页面的步骤,包括:
S200:对所述应用页面信息进行解析处理,从所述应用页面信息中提取出对应的指定应用信息与指定页面信息;
S201:基于所述指定应用信息与所述指定页面信息,生成对应的页面获取请求;
S202:将所述页面获取请求发送至预设的页面数据库,以使得所述页面数据库基于所述页面获取请求中携带的所述指定应用信息与所述指定页面信息,对内部存储的所有页面进行查询处理,查找出与所述页面获取请求对应的目标页面;
S203:接收所述页面数据库返回的所述目标页面,并将所述目标页面作为所述指定页面。
如上述步骤S200至S203所述,上述获取与上述页面应用信息对应的指定页面的步骤,具体可包括:首先对上述应用页面信息进行解析处理,从上述应用页面信息中提取出对应的指定应用信息与指定页面信息。其中,上述应用页面信息包含有需要进行埋点设置处理的应用程序的页面的信息,因而可从该应用页面信息中解析提出指定应用信息与指定页面信息。然后基于上述指定应用信息与上述指定页面信息,生成对应的页面获取请求。其中,上述页面获取请求为发出的用于在上述页面数据库中获取指定页面的请求,上述页面获取请求至少携带上述指定应用信息与上述指定页面信息。之后将上述页面获取请求发送至预设的页面数据库,以使得上述页面数据库基于上述页面获取请求中携带的上述指定应用信息与上述指定页面信息,对内部存储的所有页面进行查询处理,查找出与上述页面获取请求对应的目标页面。其中,上述页面数据库为预先存储有应用程序信息,以及与各应用程序信息对应的页面的数据库,可通过该页面数据库查询出与用户输入的埋点请求对应的指定页面。最后接收上述页面数据库返回的上述目标页面,并将上述目标页面作为上述指定页面。本实施例能够基于页面数据库快速地查询出与上述页面应用信息对应的指定页面,有利于用户后续能够基于该指定页面顺利便捷地进行所需的埋点设置处理流程,提高用户的使用体验。
进一步地,本申请一实施例中,上述步骤S1中的基于所述用户信息判断所述用户是否具备埋点设置权限的步骤,包括:
S100:调用预设的分类树模型;
S101:通过所述分类树模型确定出与所述用户信息对应的用户角色类别,并基于预设的类别与权限等级的对应关系,确定出与所述用户信息的类别对应的指定权限等级;
S102:基于预设的业务操作权限表,获取与埋点设置的业务操作对应的埋点设置权限等级;
S103:判断所述指定等级权限是否小于所述埋点设置权限等级;
S104:若所述指定等级权限小于所述埋点设置权限等级,则判定所述用户不具备埋点设置权限;
S105:若所述指定等级权限不小于所述埋点设置权限等级,则判定所述用户具备埋点设置权限。
如上述步骤S100至S105所述,上述基于上述用户信息判断上述用户是否具备埋点设置权限的步骤,具体可包括:首先调用预设的分类树模型。然后通过上述分类树模型确定出与上述用户信息对应的用户角色类别,并基于预设的类别与权限等级的对应关系,确定出与上述用户信息的类别对应的指定权限等级。其中,分类树模型中除叶子节点外的每一个节点均对应一个分类规则,每一个分类规则针对用户信息中的一类数据进行分类。因此,通过该分类树模型可以将用户信息一层层的进行分类,最终将用户信息分配至一个叶子节点中。随后,再根据预设的叶子节点与权限等级参数的对应关系,就可以确定出用户信息对应的权限等级参数。举例地,假设用户信息包括:“职位级别:4,业务团队:B,研发任务:8”,假设分类树模型的根节点通过“职位级别”进行分类,第二级节点通过“业务团队”进行分类,第三级节点通过“研发任务”进行分类,则通过三层的分类,可以将用户信息分配到一个叶子节点,再根据预设的叶子节点与权限等级参数的对应关系,就可以确定出与用户信息对应的权限等级参数。之后基于预设的业务操作权限表,获取与埋点设置的业务操作对应的埋点设置权限等级。其中,预先创建有业务操作权限表,该业务操作权限表中记录有与每一个业务操作一一对应的权限等级。最后判断上述指定等级权限是否小于上述埋点设置权限等级。如果上述指定等级权限小于上述埋点设置权限等级,则判定上述用户不具备埋点设置权限。而如果上述指定等级权限不小于上述埋点设置权限等级,则判定上述用户具备埋点设置权限。本实施例通过使用分类树模型来快速地获取与该用户信息对应的指定权限等级,之后再将用户的指定权限等级与埋点处理的业务操作对应的埋点设置权限等级进行数值大小比较以得到对应的比较结果,进而能够根据该比较结果来准确快速地判别出用户信息对应的用户是否具有埋点设置权限。只有在判定出用户具备埋点设置权限时,后续才会基于该埋点请求执行后续的埋点设置处理流程,避免由于响应了非法用户输入的埋点请求而导致不良后果。另外,由于只对具备埋点设置权限的用户开放埋点设置处理功能,实现了埋点设置处理的规范性与安全性。
进一步地,本申请一实施例中,上述步骤S8之后,包括:
S800:获取与具有埋点设置需求的所有特定页面控件元素对应的所有特定埋点信息;
S801:根据所述特定埋点信息,生成对应的埋点参数文件;
S802:生成所述埋点参数文件的埋点版本号,并以所述埋点版本号作为所述埋点参数文件的文件名称;
S803:存储所述埋点参数文件。
如上述步骤S800至S803所述,在执行上述获取与上述指定应用程序中上述指定页面控件元素对应的控件代码,并将上述指定埋点代码嵌入至上述控件代码内的步骤之后,还可包括生成及存储埋点参数文件的处理步骤。具体地,首先获取与具有埋点设置需求的所有特定页面控件元素对应的所有特定埋点信息。其中,上述特定埋点信息是指用户输入的与在指定应用程序中需要进行埋点设置的特定页面控件元素所对应的埋点信息。然后根据上述特定埋点信息,生成对应的埋点参数文件。其中,可以预先创建一个空白文档,然后将上述特定埋点信息填充至该空白文档内,以得到上述埋点参数文件。之后生成上述埋点参数文件的埋点版本号,并以上述埋点版本号作为上述埋点参数文件的文件名称。其中,如果上述埋点参数文件是首次生成的文件,则会生成1.0的埋点版本号。另外,在后续对于上述指定应用程序的埋点设置处理过程,如果对于指定应用程序出现了新的埋点设置或对于历史埋点的修改时,便会基于该新的埋点设置或对于历史埋点的修改对上述埋点参数文件进行相应的更新,每一次更新会重新生成埋点参数文件的埋点版本号。举例地,当目前的埋点参数文件基于首次生成的埋点参数文件出现了第一次数据更新时,会生成2.0的埋点版本号;而当目前的埋点参数文件基于首次生成的埋点参数文件出现了第二次数据更新时,会生成3.0的埋点版本号。最后存储上述埋点参数文件。其中,上述埋点参数文件可存储于区块链。本实施例通过创建埋点参数文件来对用户输入与应用程序相关的埋点信息进行存储,可以实现对于应用程序的埋点信息的统一存储和管理,有利于后续用户能够基于该埋点参数文件来快速地查询出所需的埋点设置细节,进而可以清楚地了解到埋点设置细节的具体内容,有效地提高了用户的使用体验。
本申请实施例中的埋点设置方法还可以应用于区块链领域,如将上述指定埋点代码等数据存储于区块链上。通过使用区块链来对上述指定埋点代码进行存储和管理,能够有效地保证上述指定埋点代码的安全性与不可篡改性。
上述区块链是分布式数据存储、点对点传输、共识机制、加密算法等计算机技术的新型应用模式。区块链(Blockchain),本质上是一个去中心化的数据库,是一串使用密码学方法相关联产生的数据块,每一个数据块中包含了一批次网络交易的信息,用于验证其信息的有效性(防伪)和生成下一个区块。区块链可以包括区块链底层平台、平台产品服务层以及应用服务层等。
区块链底层平台可以包括用户管理、基础服务、智能合约以及运营监控等处理模块。其中,用户管理模块负责所有区块链参与者的身份信息管理,包括维护公私钥生成(账户管理)、密钥管理以及用户真实身份和区块链地址对应关系维护(权限管理)等,并且在授权的情况下,监管和审计某些真实身份的交易情况,提供风险控制的规则配置(风控审计);基础服务模块部署在所有区块链节点设备上,用来验证业务请求的有效性,并对有效请求完成共识后记录到存储上,对于一个新的业务请求,基础服务先对接口适配解析和鉴权处理(接口适配),然后通过共识算法将业务信息加密(共识管理),在加密之后完整一致的传输至共享账本上(网络通信),并进行记录存储;智能合约模块负责合约的注册发行以及合约触发和合约执行,开发人员可以通过某种编程语言定义合约逻辑,发布到区块链上(合约注册),根据合约条款的逻辑,调用密钥或者其它的事件触发执行,完成合约逻辑,同时还提供对合约升级注销的功能;运营监控模块主要负责产品发布过程中的部署、配置的修改、合约设置、云适配以及产品运行中的实时状态的可视化输出,例如:告警、监控网络情况、监控节点设备健康状态等。
参照图2,本申请一实施例中还提供了一种埋点设置装置,包括:
判断模块1,用于当接收到用户输入的埋点请求时,从所述埋点请求中解析出用户信息,并基于所述用户信息判断所述用户是否具备埋点设置权限,其中,所述埋点请求内携带有应用页面信息与用户信息;
第一获取模块2,用于若所述用户具备埋点处理权限,则从所述埋点请求中解析出所述应用页面信息,获取与所述页面应用信息对应的指定页面,并在当前界面展示所述指定页面,其中,所述指定页面包括多个页面控件元素,所述指定页面属于指定应用程序内的页面;
确定模块3,用于当接收到所述用户在所述指定页面内触发的点击操作时,获取与所述点击操作对应的点击位置信息,并基于所述点击位置信息确定出对应的指定页面控件元素;
展示模块4,用于在当前界面展示与所述指定页面控件元素对应的埋点信息填充窗口,其中,所述埋点信息填充窗口包括多个埋点字段以及对应的输入框,所述埋点字段包括必填字段与可选字段;
接收模块5,用于接收所述用户在所述输入框内输入的埋点信息;
校验模块6,用于对所述埋点信息进行参数校验处理,并判断是否校验通过;
第一生成模块7,用于若校验通过,则基于预设的代码模板与所述埋点信息,生成与所述指定页面控件元素对应的指定埋点代码;
添加模块8,用于获取与所述指定应用程序中所述指定页面控件元素对应的控件代码,并将所述指定埋点代码添加至所述控件代码内。
本实施例中,上述埋点设置装置中的判断模块、第一获取模块、确定模块、展示模块、接收模块、校验模块、第一生成模块与添加模块的功能和作用的实现过程具体详见上述埋点设置方法中对应步骤S1至S8的实现过程,在此不再赘述。
进一步地,本申请一实施例中,上述确定模块,包括:
第一获取单元,用于获取与所述指定页面包含的所有页面控件元素一一对应的指定坐标集合;
第二获取单元,用于获取所有所述指定坐标集合的数量值;
创建单元,用于创建与所述数量值相同的多个线程,为所述指定坐标集合与所述线程建立一一对应的关系,并将各所述指定坐标集合分别发送至对应的线程内;
第三获取单元,用于获取与所述点击位置信息对应的坐标信息;
第一发送单元,用于将所述坐标信息分别发送至各所述线程,以及将并行数据匹配指令发送至各所述线程;
执行单元,用于通过各所述线程,基于所述并行数据匹配指令分别执行所述坐标信息与内部的指定坐标集合包含的所有坐标的匹配处理,得到对应的匹配结果,其中,所述匹配结果包括匹配通过与匹配失败;
筛选单元,用于从所有所述匹配结果中筛选出匹配成功的指定匹配结果;
第四获取单元,用于获取与所述指定匹配结果对应的目标页面控件元素;
第一确定单元,用于将所述目标页面控件元素确定为所述指定页面控件元素。
本实施例中,上述埋点设置装置中的第一获取单元、第二获取单元、创建单元、第三获取单元、第一发送单元、执行单元、筛选单元、第四获取单元与第一确定单元的功能和作用的实现过程具体详见上述埋点设置方法中对应步骤S300至S308的实现过程,在此不再赘述。
进一步地,本申请一实施例中,上述确定模块,还包括:
第五获取单元,用于分别获取各所述页面控件元素包含的坐标集合;以及,
第六获取单元,用于获取预设的参数范围值;
处理单元,用于基于所述参数范围值,对各所述坐标集合进行坐标扩展处理,得到对应的处理后的坐标集合;
第二确定单元,用于将所述处理后的坐标集合确定为所述指定坐标集合;
存储单元,用于存储所述指定坐标集合。
本实施例中,上述埋点设置装置中的第五获取单元、第六获取单元、处理单元、第二确定单元与存储单元的功能和作用的实现过程具体详见上述埋点设置方法中对应步骤S3000至S3004的实现过程,在此不再赘述。
进一步地,本申请一实施例中,上述第一生成模块,包括:
第七获取单元,用于获取与所述指定页面控件元素对应的预设的代码模板,其中,所述代码模板中包括与所有所述埋点字段对应的代码数据;
第一判断单元,用于基于所述用户输入的所述埋点信息,判断在所有所述输入框中是否存在未填写有信息的空白输入框;
第八获取单元,用于若在所有所述输入框中存在未填写有信息的空白输入框,则获取与所述空白输入框对应的特殊埋点字段;
删除单元,用于基于所述特殊埋点字段,从所述代码模板内删除与所述特殊埋点字段对应的特殊代码数据,得到修改后的代码模板;
填充单元,用于将所述埋点信息填充至所述修改后的代码模板中的对应位置处,得到填充后的代码模板;
第三确定单元,用于将所述填充后的代码模板确定为所述指定埋点代码。
本实施例中,上述埋点设置装置中的第七获取单元、第一判断单元、第八获取单元、删除单元、填充单元与第三确定单元的功能和作用的实现过程具体详见上述埋点设置方法中对应步骤S700至S705的实现过程,在此不再赘述。
进一步地,本申请一实施例中,上述第一获取模块,包括:
提取单元,用于对所述应用页面信息进行解析处理,从所述应用页面信息中提取出对应的指定应用信息与指定页面信息;
生成单元,用于基于所述指定应用信息与所述指定页面信息,生成对应的页面获取请求;
第二发送单元,用于将所述页面获取请求发送至预设的页面数据库,以使得所述页面数据库基于所述页面获取请求中携带的所述指定应用信息与所述指定页面信息,对内部存储的所有页面进行查询处理,查找出与所述页面获取请求对应的目标页面;
第四确定单元,用于接收所述页面数据库返回的所述目标页面,并将所述目标页面作为所述指定页面。
本实施例中,上述埋点设置装置中的提取单元、生成单元、第二发送单元与第四确定单元的功能和作用的实现过程具体详见上述埋点设置方法中对应步骤S200至S203的实现过程,在此不再赘述。
进一步地,本申请一实施例中,上述判断模块,包括:
调用单元,用于调用预设的分类树模型;
第五确定单元,用于通过所述分类树模型确定出与所述用户信息对应的用户角色类别,并基于预设的类别与权限等级的对应关系,确定出与所述用户信息的类别对应的指定权限等级;
第九获取单元,用于基于预设的业务操作权限表,获取与埋点设置的业务操作对应的埋点设置权限等级;
第二判断单元,用于判断所述指定等级权限是否小于所述埋点设置权限等级;
第一判定单元,用于若所述指定等级权限小于所述埋点设置权限等级,则判定所述用户不具备埋点设置权限;
第二判定单元,用于若所述指定等级权限不小于所述埋点设置权限等级,则判定所述用户具备埋点设置权限。
本实施例中,上述埋点设置装置中的调用单元、第五确定单元、第九获取单元、第二判断单元、第一判定单元与第二判定单元的功能和作用的实现过程具体详见上述埋点设置方法中对应步骤S100至S105的实现过程,在此不再赘述。
进一步地,本申请一实施例中,上述埋点设置装置,包括:
第二获取模块,用于获取与具有埋点设置需求的所有特定页面控件元素对应的所有特定埋点信息;
第二生成模块,用于根据所述特定埋点信息,生成对应的埋点参数文件;
第三生成模块,用于生成所述埋点参数文件的埋点版本号,并以所述埋点版本号作为所述埋点参数文件的文件名称;
存储模块,用于存储所述埋点参数文件。
本实施例中,上述埋点设置装置中的第二获取模块、第二生成模块、第三生成模块与存储模块的功能和作用的实现过程具体详见上述埋点设置方法中对应步骤S800至S803的实现过程,在此不再赘述。
参照图3,本申请实施例中还提供一种计算机设备,该计算机设备可以是服务器,其内部结构可以如图3所示。该计算机设备包括通过系统总线连接的处理器、存储器、网络接口、显示屏、输入装置和数据库。其中,该计算机设备设计的处理器用于提供计算和控制能力。该计算机设备的存储器包括存储介质、内存储器。该存储介质存储有操作系统、计算机程序和数据库。该内存储器为存储介质中的操作系统和计算机程序的运行提供环境。该计算机设备的数据库用于存储应用页面信息、用户信息、点击位置信息、指定页面控件元素、埋点信息、代码模板以及指定埋点代码。该计算机设备的网络接口用于与外部的终端通过网络连接通信。该计算机设备的显示屏是计算机中必不可少的一种图文输出设备,用于将数字信号转换为光信号,使文字与图形在显示屏的屏幕上显示出来。该计算机设备的输入装置是计算机与用户或其他设备之间进行信息交换的主要装置,用于把数据、指令及某些标志信息等输送到计算机中去。该计算机程序被处理器执行时以实现一种埋点设置方法。
上述处理器执行上述埋点设置方法的步骤:
当接收到用户输入的埋点请求时,从所述埋点请求中解析出用户信息,并基于所述用户信息判断所述用户是否具备埋点设置权限,其中,所述埋点请求内携带有应用页面信息与用户信息;
若所述用户具备埋点处理权限,则从所述埋点请求中解析出所述应用页面信息,获取与所述页面应用信息对应的指定页面,并在当前界面展示所述指定页面,其中,所述指定页面包括多个页面控件元素,所述指定页面属于指定应用程序内的页面;
当接收到所述用户在所述指定页面内触发的点击操作时,获取与所述点击操作对应的点击位置信息,并基于所述点击位置信息确定出对应的指定页面控件元素;
在当前界面展示与所述指定页面控件元素对应的埋点信息填充窗口,其中,所述埋点信息填充窗口包括多个埋点字段以及对应的输入框,所述埋点字段包括必填字段与可选字段;
接收所述用户在所述输入框内输入的埋点信息;
对所述埋点信息进行参数校验处理,并判断是否校验通过;
若校验通过,则基于预设的代码模板与所述埋点信息,生成与所述指定页面控件元素对应的指定埋点代码;
获取与所述指定应用程序中所述指定页面控件元素对应的控件代码,并将所述指定埋点代码添加至所述控件代码内。
本领域技术人员可以理解,图3中示出的结构,仅仅是与本申请方案相关的部分结构的框图,并不构成对本申请方案所应用于其上的装置、计算机设备的限定。
本申请一实施例还提供一种计算机可读存储介质,其上存储有计算机程序,计算机程序被处理器执行时实现一种埋点设置方法,具体为:
当接收到用户输入的埋点请求时,从所述埋点请求中解析出用户信息,并基于所述用户信息判断所述用户是否具备埋点设置权限,其中,所述埋点请求内携带有应用页面信息与用户信息;
若所述用户具备埋点处理权限,则从所述埋点请求中解析出所述应用页面信息,获取与所述页面应用信息对应的指定页面,并在当前界面展示所述指定页面,其中,所述指定页面包括多个页面控件元素,所述指定页面属于指定应用程序内的页面;
当接收到所述用户在所述指定页面内触发的点击操作时,获取与所述点击操作对应的点击位置信息,并基于所述点击位置信息确定出对应的指定页面控件元素;
在当前界面展示与所述指定页面控件元素对应的埋点信息填充窗口,其中,所述埋点信息填充窗口包括多个埋点字段以及对应的输入框,所述埋点字段包括必填字段与可选字段;
接收所述用户在所述输入框内输入的埋点信息;
对所述埋点信息进行参数校验处理,并判断是否校验通过;
若校验通过,则基于预设的代码模板与所述埋点信息,生成与所述指定页面控件元素对应的指定埋点代码;
获取与所述指定应用程序中所述指定页面控件元素对应的控件代码,并将所述指定埋点代码添加至所述控件代码内。
综上所述,本申请实施例中提供的埋点设置方法、装置、计算机设备和存储介质,当具备埋点设置权限的用户具有埋点需求时,通过在界面展示与数据埋点对应的页面,并提供与用户在该页面的点击操作所对应的指定页面控件元素的埋点信息填充窗口,以便用户在该埋点信息填充窗口内填入相关的埋点信息,进而可根据该埋点信息快捷地生成对应的指定埋点代码,最后将该指定埋点代码嵌入至所述指定页面控件元素对应的控件代码内以实现智能快速地完成页面的埋点设置处理,有效地提高了埋点设置的处理效率,降低了开发人员的工作量和沟通成本。
本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成,所述的计算机程序可存储于计算机可读取存储介质中,该计算机程序在执行时,可包括如上述各方法的实施例的流程。其中,本申请所提供的和实施例中所使用的对存储器、存储、数据库或其它介质的任何引用,均可包括非易失性和/或易失性存储器。非易失性存储器可以包括只读存储器(ROM)、可编程ROM(PROM)、电可编程ROM(EPROM)、电可擦除可编程ROM(EEPROM)或闪存。易失性存储器可包括随机存取存储器(RAM)或者外部高速缓冲存储器。作为说明而非局限,RAM通过多种形式可得,诸如静态RAM(SRAM)、动态RAM(DRAM)、同步DRAM(SDRAM)、双速据率SDRAM(SSRSDRAM)、增强型SDRAM(ESDRAM)、同步链路(Synchlink)DRAM(SLDRAM)、存储器总线(Rambus)直接RAM(RDRAM)、直接存储器总线动态RAM(DRDRAM)、以及存储器总线动态RAM(RDRAM)等。
需要说明的是,在本文中,术语“包括”、“包含”或者其任何其它变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、装置、物品或者方法不仅包括那些要素,而且还包括没有明确列出的其它要素,或者是还包括为这种过程、装置、物品或者方法所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括该要素的过程、装置、物品或者方法中还存在另外的相同要素。
以上所述仅为本申请的优选实施例,并非因此限制本申请的专利范围,凡是利用本申请说明书及附图内容所作的等效结构或等效流程变换,或直接或间接运用在其他相关的技术领域,均同理包括在本申请的专利保护范围内。
Claims (10)
1.一种埋点设置方法,其特征在于,包括:
当接收到用户输入的埋点请求时,从所述埋点请求中解析出用户信息,并基于所述用户信息判断所述用户是否具备埋点设置权限,其中,所述埋点请求内携带有应用页面信息与用户信息;
若所述用户具备埋点处理权限,则从所述埋点请求中解析出所述应用页面信息,获取与所述页面应用信息对应的指定页面,并在当前界面展示所述指定页面,其中,所述指定页面包括多个页面控件元素,所述指定页面属于指定应用程序内的页面;
当接收到所述用户在所述指定页面内触发的点击操作时,获取与所述点击操作对应的点击位置信息,并基于所述点击位置信息确定出对应的指定页面控件元素;
在当前界面展示与所述指定页面控件元素对应的埋点信息填充窗口,其中,所述埋点信息填充窗口包括多个埋点字段以及对应的输入框,所述埋点字段包括必填字段与可选字段;
接收所述用户在所述输入框内输入的埋点信息;
对所述埋点信息进行参数校验处理,并判断是否校验通过;
若校验通过,则基于预设的代码模板与所述埋点信息,生成与所述指定页面控件元素对应的指定埋点代码;
获取与所述指定应用程序中所述指定页面控件元素对应的控件代码,并将所述指定埋点代码添加至所述控件代码内。
2.根据权利要求1所述的埋点设置方法,其特征在于,所述基于所述点击位置信息确定出对应的指定页面控件元素的步骤,包括:
获取与所述指定页面包含的所有页面控件元素一一对应的指定坐标集合;
获取所有所述指定坐标集合的数量值;
创建与所述数量值相同的多个线程,为所述指定坐标集合与所述线程建立一一对应的关系,并将各所述指定坐标集合分别发送至对应的线程内;
获取与所述点击位置信息对应的坐标信息;
将所述坐标信息分别发送至各所述线程,以及将并行数据匹配指令发送至各所述线程;
通过各所述线程,基于所述并行数据匹配指令分别执行所述坐标信息与内部的指定坐标集合包含的所有坐标的匹配处理,得到对应的匹配结果,其中,所述匹配结果包括匹配通过与匹配失败;
从所有所述匹配结果中筛选出匹配成功的指定匹配结果;
获取与所述指定匹配结果对应的目标页面控件元素;
将所述目标页面控件元素确定为所述指定页面控件元素。
3.根据权利要求2所述的埋点设置方法,其特征在于,所述获取与所述指定页面包含的所有页面控件元素一一对应的指定坐标集合的步骤之前,包括:
分别获取各所述页面控件元素包含的坐标集合;以及,
获取预设的参数范围值;
基于所述参数范围值,对各所述坐标集合进行坐标扩展处理,得到对应的处理后的坐标集合;
将所述处理后的坐标集合确定为所述指定坐标集合;
存储所述指定坐标集合。
4.根据权利要求1所述的埋点设置方法,其特征在于,所述基于预设的代码模板与所述埋点信息,生成与所述指定页面控件元素对应的指定埋点代码的步骤,包括:
获取与所述指定页面控件元素对应的预设的代码模板,其中,所述代码模板中包括与所有所述埋点字段对应的代码数据;
基于所述用户输入的所述埋点信息,判断在所有所述输入框中是否存在未填写有信息的空白输入框;
若在所有所述输入框中存在未填写有信息的空白输入框,则获取与所述空白输入框对应的特殊埋点字段;
基于所述特殊埋点字段,从所述代码模板内删除与所述特殊埋点字段对应的特殊代码数据,得到修改后的代码模板;
将所述埋点信息填充至所述修改后的代码模板中的对应位置处,得到填充后的代码模板;
将所述填充后的代码模板确定为所述指定埋点代码。
5.根据权利要求1所述的埋点设置方法,其特征在于,所述获取与所述页面应用信息对应的指定页面的步骤,包括:
对所述应用页面信息进行解析处理,从所述应用页面信息中提取出对应的指定应用信息与指定页面信息;
基于所述指定应用信息与所述指定页面信息,生成对应的页面获取请求;
将所述页面获取请求发送至预设的页面数据库,以使得所述页面数据库基于所述页面获取请求中携带的所述指定应用信息与所述指定页面信息,对内部存储的所有页面进行查询处理,查找出与所述页面获取请求对应的目标页面;
接收所述页面数据库返回的所述目标页面,并将所述目标页面作为所述指定页面。
6.根据权利要求1所述的埋点设置方法,其特征在于,所述基于所述用户信息判断所述用户是否具备埋点设置权限的步骤,包括:
调用预设的分类树模型;
通过所述分类树模型确定出与所述用户信息对应的用户角色类别,并基于预设的类别与权限等级的对应关系,确定出与所述用户信息的类别对应的指定权限等级;
基于预设的业务操作权限表,获取与埋点设置的业务操作对应的埋点设置权限等级;
判断所述指定等级权限是否小于所述埋点设置权限等级;
若所述指定等级权限小于所述埋点设置权限等级,则判定所述用户不具备埋点设置权限;
若所述指定等级权限不小于所述埋点设置权限等级,则判定所述用户具备埋点设置权限。
7.根据权利要求1所述的埋点设置方法,其特征在于,所述获取与所述指定应用程序中所述指定页面控件元素对应的控件代码,并将所述指定埋点代码嵌入至所述控件代码内的步骤之后,包括:
获取与具有埋点设置需求的所有特定页面控件元素对应的所有特定埋点信息;
根据所述特定埋点信息,生成对应的埋点参数文件;
生成所述埋点参数文件的埋点版本号,并以所述埋点版本号作为所述埋点参数文件的文件名称;
存储所述埋点参数文件。
8.一种埋点设置装置,其特征在于,包括:
判断模块,用于当接收到用户输入的埋点请求时,从所述埋点请求中解析出用户信息,并基于所述用户信息判断所述用户是否具备埋点设置权限,其中,所述埋点请求内携带有应用页面信息与用户信息;
第一获取模块,用于若所述用户具备埋点处理权限,则从所述埋点请求中解析出所述应用页面信息,获取与所述页面应用信息对应的指定页面,并在当前界面展示所述指定页面,其中,所述指定页面包括多个页面控件元素,所述指定页面属于指定应用程序内的页面;
确定模块,用于当接收到所述用户在所述指定页面内触发的点击操作时,获取与所述点击操作对应的点击位置信息,并基于所述点击位置信息确定出对应的指定页面控件元素;
展示模块,用于在当前界面展示与所述指定页面控件元素对应的埋点信息填充窗口,其中,所述埋点信息填充窗口包括多个埋点字段以及对应的输入框,所述埋点字段包括必填字段与可选字段;
接收模块,用于接收所述用户在所述输入框内输入的埋点信息;
校验模块,用于对所述埋点信息进行参数校验处理,并判断是否校验通过;
第一生成模块,用于若校验通过,则基于预设的代码模板与所述埋点信息,生成与所述指定页面控件元素对应的指定埋点代码;
添加模块,用于获取与所述指定应用程序中所述指定页面控件元素对应的控件代码,并将所述指定埋点代码添加至所述控件代码内。
9.一种计算机设备,包括存储器和处理器,所述存储器中存储有计算机程序,其特征在于,所述处理器执行所述计算机程序时实现权利要求1至7中任一项所述方法的步骤。
10.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现权利要求1至7中任一项所述的方法的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202011528574.8A CN112650659B (zh) | 2020-12-22 | 2020-12-22 | 埋点设置方法、装置、计算机设备和存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202011528574.8A CN112650659B (zh) | 2020-12-22 | 2020-12-22 | 埋点设置方法、装置、计算机设备和存储介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN112650659A true CN112650659A (zh) | 2021-04-13 |
CN112650659B CN112650659B (zh) | 2023-02-07 |
Family
ID=75358989
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202011528574.8A Active CN112650659B (zh) | 2020-12-22 | 2020-12-22 | 埋点设置方法、装置、计算机设备和存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN112650659B (zh) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113642039A (zh) * | 2021-08-09 | 2021-11-12 | 平安科技(深圳)有限公司 | 单证模板的配置方法、装置、计算机设备和存储介质 |
CN114152252A (zh) * | 2021-11-30 | 2022-03-08 | 中国平安财产保险股份有限公司 | 基于地图的数据调整方法、装置、计算机设备和存储介质 |
Citations (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106844217A (zh) * | 2017-01-26 | 2017-06-13 | 网易(杭州)网络有限公司 | 对应用的控件进行埋点的方法及装置、可读存储介质 |
CN108319552A (zh) * | 2018-02-07 | 2018-07-24 | 优信数享(北京)信息技术有限公司 | 一种埋点测试方法,装置及系统 |
CN108763062A (zh) * | 2018-05-09 | 2018-11-06 | 平安普惠企业管理有限公司 | 埋点名称的过滤方法及终端设备 |
CN108920354A (zh) * | 2018-05-07 | 2018-11-30 | 上海陆家嘴国际金融资产交易市场股份有限公司 | 埋点管理方法、装置、计算机设备和存储介质 |
CN109491645A (zh) * | 2018-10-17 | 2019-03-19 | 深圳壹账通智能科技有限公司 | 基于界面元素的埋点方法、装置、计算机设备及存储介质 |
CN111241444A (zh) * | 2020-01-09 | 2020-06-05 | 深圳壹账通智能科技有限公司 | 网页埋点代码添加方法、装置、计算机设备及存储介质 |
CN111343173A (zh) * | 2020-02-21 | 2020-06-26 | 腾讯云计算(北京)有限责任公司 | 数据访问的异常监测方法及装置 |
CN111475394A (zh) * | 2019-01-24 | 2020-07-31 | 阿里巴巴集团控股有限公司 | 一种应用测试方法及装置 |
CN111611140A (zh) * | 2020-04-30 | 2020-09-01 | 广州华多网络科技有限公司 | 埋点数据的上报验证方法、装置、电子设备及存储介质 |
CN112015467A (zh) * | 2020-09-04 | 2020-12-01 | 杭州网易再顾科技有限公司 | 埋点方法、介质、装置和计算设备 |
-
2020
- 2020-12-22 CN CN202011528574.8A patent/CN112650659B/zh active Active
Patent Citations (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106844217A (zh) * | 2017-01-26 | 2017-06-13 | 网易(杭州)网络有限公司 | 对应用的控件进行埋点的方法及装置、可读存储介质 |
CN108319552A (zh) * | 2018-02-07 | 2018-07-24 | 优信数享(北京)信息技术有限公司 | 一种埋点测试方法,装置及系统 |
CN108920354A (zh) * | 2018-05-07 | 2018-11-30 | 上海陆家嘴国际金融资产交易市场股份有限公司 | 埋点管理方法、装置、计算机设备和存储介质 |
CN108763062A (zh) * | 2018-05-09 | 2018-11-06 | 平安普惠企业管理有限公司 | 埋点名称的过滤方法及终端设备 |
CN109491645A (zh) * | 2018-10-17 | 2019-03-19 | 深圳壹账通智能科技有限公司 | 基于界面元素的埋点方法、装置、计算机设备及存储介质 |
CN111475394A (zh) * | 2019-01-24 | 2020-07-31 | 阿里巴巴集团控股有限公司 | 一种应用测试方法及装置 |
CN111241444A (zh) * | 2020-01-09 | 2020-06-05 | 深圳壹账通智能科技有限公司 | 网页埋点代码添加方法、装置、计算机设备及存储介质 |
CN111343173A (zh) * | 2020-02-21 | 2020-06-26 | 腾讯云计算(北京)有限责任公司 | 数据访问的异常监测方法及装置 |
CN111611140A (zh) * | 2020-04-30 | 2020-09-01 | 广州华多网络科技有限公司 | 埋点数据的上报验证方法、装置、电子设备及存储介质 |
CN112015467A (zh) * | 2020-09-04 | 2020-12-01 | 杭州网易再顾科技有限公司 | 埋点方法、介质、装置和计算设备 |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113642039A (zh) * | 2021-08-09 | 2021-11-12 | 平安科技(深圳)有限公司 | 单证模板的配置方法、装置、计算机设备和存储介质 |
CN113642039B (zh) * | 2021-08-09 | 2024-05-28 | 平安科技(深圳)有限公司 | 单证模板的配置方法、装置、计算机设备和存储介质 |
CN114152252A (zh) * | 2021-11-30 | 2022-03-08 | 中国平安财产保险股份有限公司 | 基于地图的数据调整方法、装置、计算机设备和存储介质 |
CN114152252B (zh) * | 2021-11-30 | 2023-07-25 | 中国平安财产保险股份有限公司 | 基于地图的数据调整方法、装置、计算机设备和存储介质 |
Also Published As
Publication number | Publication date |
---|---|
CN112650659B (zh) | 2023-02-07 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN112632575A (zh) | 业务系统的权限管理方法、装置、计算机设备及存储介质 | |
CN111737963B (zh) | 基于配置文件的表单填写方法、装置和计算机设备 | |
CN112668041B (zh) | 单证文件的生成方法、装置、计算机设备和存储介质 | |
CN113326081A (zh) | 静态资源的处理方法、装置、计算机设备和存储介质 | |
CN113642039B (zh) | 单证模板的配置方法、装置、计算机设备和存储介质 | |
CN112650659B (zh) | 埋点设置方法、装置、计算机设备和存储介质 | |
CN111597424A (zh) | 爬虫识别方法、装置、计算机设备和存储介质 | |
CN111880921A (zh) | 基于规则引擎的作业处理方法、装置和计算机设备 | |
CN112637282B (zh) | 信息推送方法、装置、计算机设备和存储介质 | |
CN113742776A (zh) | 基于生物识别技术的数据校验方法、装置和计算机设备 | |
CN112328482A (zh) | 基于脚本模板的测试方法、装置、计算机设备和存储介质 | |
CN112597158A (zh) | 数据匹配方法、装置、计算机设备和存储介质 | |
CN112036147A (zh) | 将图片转换为网页的方法、装置、计算机设备和存储介质 | |
CN114218097A (zh) | 测试用例生成方法、装置、计算机设备和存储介质 | |
CN116112194A (zh) | 用户行为分析方法、装置、电子设备及计算机存储介质 | |
CN114817055A (zh) | 基于接口的回归测试方法、装置、计算机设备和存储介质 | |
CN113435990B (zh) | 基于规则引擎的凭证生成方法、装置和计算机设备 | |
CN112965981B (zh) | 数据核对方法、装置、计算机设备和存储介质 | |
CN114090408A (zh) | 数据监控分析方法、装置、计算机设备和存储介质 | |
CN113672654A (zh) | 数据查询方法、装置、计算机设备和存储介质 | |
CN112328260A (zh) | 基于大数据平台的sql语句转换方法、装置和计算机设备 | |
CN113535260B (zh) | 基于模拟器的数据处理方法、装置、设备及存储介质 | |
CN111415285A (zh) | 一种基于分级行政区域的特定人员信息管理方法及终端 | |
CN113177396B (zh) | 报表生成方法、装置、计算机设备和存储介质 | |
CN113191146B (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 |