埋点方法和装置、电子设备、计算机可读介质与流程

文档序号:37051836发布日期:2024-02-20 20:50阅读:17来源:国知局
埋点方法和装置、电子设备、计算机可读介质与流程

本公开涉及计算机,具体涉及埋点方法和装置、电子设备以及计算机可读介质。


背景技术:

1、目前数据埋点有如下3种方式:1)手动埋点,用户触发某个事件后在代码里手动埋点进行数据上报,该方式对业务代码有很大的侵入性,不利于代码维护和复用;2)可视化埋点,通过可视化工具配置采集点,配置自己想要监控的元素和属性,该方式依赖于可视化工具对埋点的稳定性、可扩展性提出很大挑战;3)无埋点,它并不是真正的不需要埋点,而是前端自动采集全部事件并上报埋点数据,需要在全局对象上监听所有文档对象模型上的事件,大纲路径为从当前点击元素到目标监听事件元素所有节点构成的路径,导致无效数据、冗余数据大量上报且不可控。


技术实现思路

1、本公开的实施例提出了埋点方法和装置、电子设备、计算机可读介质。

2、第一方面,本公开的实施例提供了一种埋点方法,该方法包括:在待监测网页中引用预先打标后的组件库,使待监控网页的节点具有相应的组件的标识信息;响应于监测到用户触发操作节点,遍历自操作节点至监控节点之间的第一所有节点,操作节点为文档对象模型中绑定了监听事件的节点,监控节点为文档对象模型中绑定了与操作节点相同监听事件的外层节点,第一所有节点是文档对象模型中操作节点至监控节点之间的所有节点;基于组件库的标识信息,从第一所有节点中选取结果节点并得到操作组件的事件信息,结果节点为具有标识信息的节点。

3、在一些实施例中,上述方法还包括:基于组件库中组件的标识信息,遍历自监控节点至操作节点之间的第二所有节点,并选取第二所有节点中标记有容器类型的容器节点,第二所有节点是文档对象模型中监控节点至操作节点之间的所有节点;遍历自容器节点至操作节点之间的第三所有节点,选取第三所有节点中标记有大纲类型的大纲节点,第三所有节点是文档对象模型中容器节点至操作节点之间的所有节点;基于大纲节点,确定大纲路径,并输出事件信息和大纲路径。

4、在一些实施例中,上述基于组件库的标识信息,从第一所有节点中选取结果节点并得到操作组件的事件信息包括:基于组件库的标识信息,从第一所有节点中选取结果节点;获取结果节点的标识信息中的组件名称,确定结果节点中具有组件复用关系的父节点或至少一个子节点,将至少一个子节点的组件名称修改为与父节点相同。

5、在一些实施例中,上述基于大纲节点,确定大纲路径,并输出事件信息和大纲路径包括:基于大纲节点,确定各个大纲节点对应的路径以及各个路径的路径层级;检测大纲节点的所有路径中是否有同路径层级的路径集;响应于检测到大纲节点的所有路径中具有同路径层级的路径集,对该路径集进行重构,生成具有不同路径层级的大纲路径,并输出事件信息和大纲路径。

6、在一些实施例中,上述对该路径集进行重构,生成具有不同路径层级的大纲路径包括:检测该路径集中是否具有已激活路径;响应于检测到该路径集中具有已激活路径,选取该已激活路径作为大纲路径。

7、在一些实施例中,采用以下步骤得到预先打标后的组件库:获取初始组件库;为初始组件中的基础组件打上特定的标识信息,标识信息基于网页属性生成。

8、在一些实施例中,上述为所述初始组件中的基础组件打上特定的标识信息包括:检测组件库中是否具有容器组件;响应于组件库中具有容器组件,为该容器组件标记容器类型;针对组件库中不是容器组件的组件,检测该组件是否具有定位属性;响应于该组件具有定位属性,为该组件标记大纲类型。

9、第二方面,本公开的实施例提供了一种埋点装置,该装置包括:引用单元,被配置成在待监测网页中引用预先打标后的组件库,使待监控网页的节点具有相应的组件的标识信息;遍历单元,被配置成响应于监测到用户触发操作节点,遍历自操作节点至监控节点之间的第一所有节点,操作节点为文档对象模型中绑定了监听事件的节点,监控节点为文档对象模型中绑定了与操作节点相同监听事件的外层节点,第一所有节点是文档对象模型中操作节点至监控节点之间的所有节点;选取单元,被配置成基于组件库的标识信息,从第一所有节点中选取结果节点并得到操作组件的事件信息,结果节点为具有标识信息的节点。

10、在一些实施例中,上述装置还包括:容器确定单元,被配置成基于组件库中组件的标识信息,遍历自监控节点至操作节点之间的第二所有节点,并选取第二所有节点中标记有容器类型的容器节点,第二所有节点是文档对象模型中监控节点至操作节点之间的所有节点;大纲确定单元,被配置成遍历自容器节点至操作节点之间的第三所有节点,选取第三所有节点中标记有大纲类型的大纲节点,第三所有节点是文档对象模型中容器节点至操作节点之间的所有节点;输出单元,被配置成基于大纲节点,确定大纲路径,并输出事件信息和大纲路径。

11、在一些实施例中,上述选取单元进一步被配置成:基于组件库的标识信息,从第一所有节点中选取结果节点;获取结果节点的标识信息中的组件名称,确定结果节点中具有组件复用关系的父节点或至少一个子节点,将至少一个子节点的组件名称修改为与父节点相同。

12、在一些实施例中,上述输出单元进一步被配置成:基于大纲节点,确定各个大纲节点对应的路径以及各个路径的路径层级;检测大纲节点的所有路径中是否有同路径层级的路径集;响应于检测到大纲节点的所有路径中具有同路径层级的路径集,对该路径集进行重构,生成具有不同路径层级的大纲路径,并输出事件信息和大纲路径。

13、在一些实施例中,上述输出单元进一步被配置成:检测该路径集中是否具有已激活路径;响应于检测到该路径集中具有已激活路径,选取该已激活路径作为大纲路径。

14、在一些实施例中,采用打标单元得到预先打标后的组件库,打标单元被配置成:获取初始组件库;为初始组件中的基础组件打上特定的标识信息,标识信息基于网页属性生成。

15、在一些实施例中,所述打标单元进一步被配置成:检测组件库中是否具有容器组件;响应于组件库中具有容器组件,为该容器组件标记容器类型;针对组件库中不是容器组件的组件,检测该组件是否具有定位属性;响应于该组件具有定位属性,为该组件标记大纲类型。

16、第三方面,本公开的实施例提供了一种电子设备,该电子设备包括:一个或多个处理器;存储装置,其上存储有一个或多个程序;当一个或多个程序被一个或多个处理器执行,使得一个或多个处理器实现如第一方面中任一实施例描述的方法。

17、第四方面,本公开的实施例提供了一种计算机可读介质,其上存储有计算机程序,该程序被处理器执行时实现如第一方面中任一实施例描述的方法。

18、本公开的实施例提供的埋点方法和装置,首先,在待监测网页中引用预先打标后的组件库,使待监控网页的节点具有相应的组件的标识信息;其次,响应于监测到用户触发操作节点,遍历自操作节点至监控节点之间的第一所有节点,操作节点为文档对象模型中绑定了监听事件的节点,监控节点为文档对象模型中绑定了与操作节点相同监听事件的外层节点,第一所有节点是文档对象模型中操作节点至监控节点之间的所有节点;最后,基于组件库的标识信息,从第一所有节点中选取结果节点并得到操作组件的事件信息,结果节点为具有标识信息的节点。由此,通过在组件库源码内部给组件提前打标实现自动化埋点,由于打标后的标识信息集成在组件库层面,对业务代码无侵入;由于在组件库的打标,实现的埋点与业务无关,无需任何可视化工具来采集埋点且埋点稳定性高;本公开得到的事件信息包括在组件库中提前打标信息,提高了得到的埋点数据的准确性。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1