CN110704028A - 埋点统计方法、电子装置及计算机设备 - Google Patents
埋点统计方法、电子装置及计算机设备 Download PDFInfo
- Publication number
- CN110704028A CN110704028A CN201910822902.6A CN201910822902A CN110704028A CN 110704028 A CN110704028 A CN 110704028A CN 201910822902 A CN201910822902 A CN 201910822902A CN 110704028 A CN110704028 A CN 110704028A
- Authority
- CN
- China
- Prior art keywords
- buried point
- module
- code
- hook
- imp
- 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
- 238000007619 statistical method Methods 0.000 title claims abstract description 20
- 238000000034 method Methods 0.000 claims abstract description 60
- 230000009471 action Effects 0.000 claims description 12
- 238000004590 computer program Methods 0.000 claims description 7
- 238000009933 burial Methods 0.000 claims description 4
- 230000008878 coupling Effects 0.000 abstract description 3
- 238000010168 coupling process Methods 0.000 abstract description 3
- 238000005859 coupling reaction Methods 0.000 abstract description 3
- 238000010586 diagram Methods 0.000 description 5
- 101000599782 Homo sapiens Insulin-like growth factor 2 mRNA-binding protein 3 Proteins 0.000 description 4
- 101000960626 Homo sapiens Mitochondrial inner membrane protease subunit 2 Proteins 0.000 description 4
- 101000702394 Homo sapiens Signal peptide peptidase-like 2A Proteins 0.000 description 4
- 101000828788 Homo sapiens Signal peptide peptidase-like 3 Proteins 0.000 description 4
- 101000960621 Homo sapiens U3 small nucleolar ribonucleoprotein protein IMP3 Proteins 0.000 description 4
- 102100030403 Signal peptide peptidase-like 2A Human genes 0.000 description 4
- 102100023501 Signal peptide peptidase-like 3 Human genes 0.000 description 4
- 238000005516 engineering process Methods 0.000 description 3
- 230000003287 optical effect Effects 0.000 description 3
- 238000011161 development Methods 0.000 description 2
- 230000003993 interaction Effects 0.000 description 2
- 230000008569 process Effects 0.000 description 2
- 238000012545 processing Methods 0.000 description 2
- 238000012552 review Methods 0.000 description 2
- 230000008094 contradictory effect Effects 0.000 description 1
- 238000007689 inspection Methods 0.000 description 1
- 238000012423 maintenance Methods 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 238000000465 moulding Methods 0.000 description 1
- 230000003068 static effect Effects 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F8/00—Arrangements for software engineering
- G06F8/20—Software design
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F8/00—Arrangements for software engineering
- G06F8/30—Creation or generation of source code
- G06F8/36—Software reuse
Landscapes
- Engineering & Computer Science (AREA)
- Software Systems (AREA)
- General Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Stored Programmes (AREA)
Abstract
本发明公开了一种埋点统计方法,包括步骤:BeeHive框架对行动应用程序进行模块化,以获取多个模块;通过BHModuleManager注册与管理所述多个模块;对所述多个模块的每个模块进行面向切面编(AOP)程埋点;及通过Aspects框架将每个模块的埋点统计代码与业务的代码进行分离,其中,利用所述Aspect框架对所述每个模块进行挂钩(Hook),并注入包含了统计逻辑的代码块(Block)。本发明提供的埋点统计方法与电子装置使每个模块都有自己的埋点文件,互相之间不耦合,修改埋点内容只需要针对自己的模块即可。
Description
技术领域
本发明涉及数据采集的技术领域,尤其涉及一种埋点统计方法、电子装置、计算机设备及存储介质。
背景技术
传统埋点统计方法,主要缺点如下。首先,需要手动复杂埋点代码,工作量大,可维护性差,改动一定埋点内容就需要大面积修改代码。其次,埋点本身是不属于业务代码的,现在与业务代码偶合。换句话说,由于要对业务代码埋点,在业务代码里面又加上了埋点代码,这样两个代码交织在一起,就耦合了,如此会导致代码复用性变差,逻辑性也不清晰。
发明内容
有鉴于此,本发明提出一种埋点统计方法,每个模块都有自己的埋点文件,互相之间不耦合,修改埋点内容只需要针对自己的模块即可。
为实现上述目的,本发明提出一种埋点统计方法,应用于电子装置中,该方法包括步骤:使用BeeHive框架对行动应用程序进行模块化,以获取多个模块;通过BHModuleManager注册与管理所述多个模块;对所述多个模块的每个模块进行面向切面编(AOP)程埋点;及通过Aspects框架将每个模块的埋点统计代码与业务的代码进行分离,其中,利用所述Aspect框架对所述每个模块进行挂钩(Hook),并注入包含了统计逻辑的代码块(Block)。
进一步地,通过iOS Method Swizzling方法与所述Aspects框架对每个模块进行AOP埋点,还包括:
新增一个挂钩操作;
通过交换所述挂钩操作Hook Action和目前操作Current Action的的IMP,当目前操作被调用时,实际上被调用的是挂钩操作的IMP;及
当调用挂钩操作时,实际上被调用的是目前操作的IMP。
进一步地,通过所述iOS Method Swizzling方法将埋点内容写在每个模块的配置文件中,并通过Aspects框架将每个独立模块的埋点统计代码与业务的代码进行分离。
进一步地,所述配置文件中包括埋点的页面名字、埋点的事件ID、按钮点击与事件名称。
为实现上述目的,本发明还提出一种电子装置,包括分模化单元与埋点单元。所述分模化单元使用BeeHive框架对行动应用程序进行模块化,以获取多个模块,通过BHModuleManager注册与管理所述多个模块。所述埋点单元对所述多个模块的每个模块进行AOP程埋点,通过Aspects框架将每个模块的埋点统计代码与业务的代码进行分离,其中,利用所述Aspect框架对所述每个模块进行挂钩(Hook),并注入包含了统计逻辑的代码块(Block)。
进一步地,所述埋点单元通过iOS Method Swizzling方法与所述Aspects框架对每个模块进行AOP埋点,还包括:新增一个挂钩操作;通过交换所述挂钩操作Hook Action和目前操作Current Action的的IMP,当目前操作被调用时,实际上被调用的是挂钩操作的IMP;及当调用挂钩操作时,实际上被调用的是目前操作的IMP。。
进一步地,所述埋点单元通过所述iOS Method Swizzling方法将埋点内容写在每个模块的配置文件中,并通过Aspects框架将每个独立模块的埋点统计代码与业务的代码进行分离。
进一步地,所述配置文件中包括埋点的页面名字、埋点的事件ID、按钮点击与事件名称。
为实现上述目的,本发明还提供一种计算机设备,包括存储器、处理器以及存储在存储器上并可在所述处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现上述埋点统计方法的步骤。
为实现上述目的,本发明还提供计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时实现上述埋点统计方法的步骤。
相较于现有技术,本发明之埋点统计方法,使得(1)埋点内容通过配置文件获取,逻辑清晰,易于维护;(2)埋点与业务分离;业务代码可以单独复用,复用时不需要带上埋点代码;(3)每个模块都有自己的埋点文件,互相之间不耦合。修改埋点内容只需要针对自己的模块即可。
附图说明
图1系显示本发明实施例之电子装置的硬件架构示意图;
图2系显示本发明实施例之电子装置的功能方块图;
图3系显示本发明实施例之埋点统计方法的步骤流程图;及
图4与图5系显示本发明实施例之调度表的示意图。
附图标记:
电子装置 | 10 |
存储器 | 110 |
处理器 | 120 |
埋点统计*** | 130 |
分模化单元 | 210 |
埋点单元 | 220 |
本发明目的的实现、功能特点及优点将结合实施例,参照附图做进一步说明。
具体实施方式
为了使本发明的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本发明进行进一步详细说明。应当理解,此处所描述的具体实施例仅用以解释本发明,并不用于限定本发明。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
需要说明的是,在本发明中涉及“第一”、“第二”等的描述仅用于描述目的,而不能理解为指示或暗示其相对重要性或者隐含指明所指示的技术特征的数量。由此,限定有“第一”、“第二”的特征可以明示或者隐含地包括至少一个该特征。另外,各个实施例之间的技术方案可以相互结合,但是必须是以本领域普通技术人员能够实现为基础,当技术方案的结合出现相互矛盾或无法实现时应当认为这种技术方案的结合不存在,也不在本发明要求的保护范围之内。
图1系显示本发明实施例之电子装置的硬件架构示意图。电子装置10,但不仅限于,可通过***总线相互通信连接存储器110、处理器120以及埋点统计***130,图1仅示出了具有组件110-130的电子装置10,但是应理解的是,并不要求实施所有示出的组件,可以替代的实施更多或者更少的组件。
所述存储器110至少包括一种类型的可读存储介质,所述可读存储介质包括闪存、硬盘、多媒体卡、卡型存储器(例如,SD或DX存储器等)、随机访问存储器(RAM)、静态随机访问存储器(SRAM)、只读存储器(ROM)、电可擦除可编程只读存储器(EEPROM)、可编程只读存储器(PROM)、磁性存储器、磁盘、光盘等。在一些实施例中,所述存储器110可以是所述电子装置10的内部存储单元,例如该电子装置10的硬盘或内存。在另一些实施例中,所述存储器也可以是所述电子装置10的外部存储设备,例如该电子装置10上配备的插接式硬盘,智能存储卡(Smart Media Card,SMC),安全数字(Secure Digital,SD)卡,闪存卡(Flash Card)等。当然,所述存储器110还可以既包括所述电子装置100的内部存储单元也包括其外部存储设备。本实施例中,所述存储器110通常用于存储安装于所述电子装置10的操作***和各类应用软件,例如埋点统计***130的程序代码等。此外,所述存储器110还可以用于暂时地存储已经输出或者将要输出的各类数据。
所述处理器120在一些实施例中可以是中央处理器(Central Processing Unit,CPU)、控制器、微控制器、微处理器、或其他数据处理芯片。该处理器120通常用于控制所述电子装置10的总体操作。本实施例中,所述处理器120用于运行所述存储器110中存储的程序代码或者处理数据,例如,运行所述埋点统计***130等。
图2系显示本发明实施例之电子装置的功能方块图。本发明实施例之电子装置10包括分模化单元210与埋点单元220。
分模化单元210对行动应用程序(Mobile Application(APP),例如,iOS APP)进行模块化,以获取多个模块。使用BeeHive框架对行动应用程序(APP)进行模块化以取得所述多个模块。通过BeeHive中的BHModuleManager来注册与管理所述多个模块。通过Annotation方式、读取本地Plist文件与Load方法注册每一个模块。
BeeHive是用于iOS的APP模块化编程的框架实现方案,吸收了Spring框架service的理念来实现模块间的API耦合。BeeHive的文档介绍如下:
BeeHive模块注册
在BeeHive中是通过BHModuleManager来管理各个模块的。BHModuleManager中只会管理已经被注册过的模块。注册Module的方式总共有三种:Annotation方式注册、读取本地Pilst文件与Load方法注册。
BeeHive模块事件
BeeHive会给每个模块提供生命周期事件,用于与BeeHive宿主环境进行必要信息交互,感知模块生命周期的变化。BeeHive的各个模块会收到一些事件。在BHModuleManager中,所有的事件被定义成了BHModuleEventType枚举。BHModuleEventType枚举主要分为三种:***事件、应用事件与业务自定义事件。
埋点单元220对所述多个模块的每个模块进行AOP(Aspect OrientedProgramming,面向切面编程)埋点。通过iOS Method Swizzling与Aspects框架对每个模块进行AOP埋点。通过Method Swizzling将埋点内容写在每个独立模块的配置文件中。通过Aspects框架将每个独立模块的埋点统计代码与业务的代码进行分离。Method Swizzling操作还包括:新增一个挂钩操作;通过交换所述挂钩操作Hook Action和目前操作CurrentAction的的IMP,当目前操作被调用时,实际上被调用的是挂钩操作的IMP;当调用挂钩操作时,实际上被调用的是目前操作的IMP。
Method Swizzling
把Method Swizzling运用到各独立模块中,把埋点内容写在配置文件中。每个模块都有自己独立的埋点配置文件,互相之间不耦合。在每个模块上都实现了AOP方式埋点,使埋点与业务分离。
配置文件中包括埋点的页面名字(PageName:首页)、埋点的事件id(EventId:首页)、按钮点击(MethodName:aibtnaction)与事件名称(EventName:AI机器人点击)。
Method Swizzling本质上就是对IMP(Implementation)和SEL(Selector)进行交换,原理如下:Method Swizzing是发生在运行时的,主要用于在运行时将两个Method进行交换,如图4和图5的调度表(Dispatch Table)所示。
在图4中,selector2原本对应着IMP2,但是为了更方便的实现特定业务需求,在图2中添加了selector3和IMP3,并且让selector2指向了IMP3,而selector3则指向了IMP2(如图5所示),这样就实现了“方法互换”。
Aspects框架
Aspects框架是iOS上的一个轻量级AOP库,提供了2个AOP方法,一个用于类,一个用于实例。在确定hook的方法之后,Aspects框架允许选择hook的时机是在方法执行之前,或是方法执行之后,甚至可以直接替换掉方法的实现。Aspects框架的常见使用情景是log和打点统计等和业务无关的操作。比如hook ViewController的viewWillLayoutSubviews方法。
图3系显示本发明实施例之埋点统计方法的步骤流程图。
步骤31,对行动应用程序(Mobile Application(APP),例如,iOS APP)进行模块化,以获取多个模块。
步骤311,使用BeeHive框架对行动应用程序(APP)进行模块化以取得所述多个模块。
步骤312,通过BeeHive中的BHModuleManager来注册与管理所述多个模块。通过Annotation方式、读取本地Plist文件与Load方法注册每一个模块。
BeeHive是用于iOS的APP模块化编程的框架实现方案,吸收了Spring框架service的理念来实现模块间的API耦合。BeeHive的文档介绍如下:
BeeHive模块注册
在BeeHive中是通过BHModuleManager来管理各个模块的。BHModuleManager中只会管理已经被注册过的模块。注册Module的方式总共有三种:Annotation方式注册、读取本地Pilst文件与Load方法注册。
BeeHive模块事件
BeeHive会给每个模块提供生命周期事件,用于与BeeHive宿主环境进行必要信息交互,感知模块生命周期的变化。BeeHive的各个模块会收到一些事件。在BHModuleManager中,所有的事件被定义成了BHModuleEventType枚举。BHModuleEventType枚举主要分为三种:***事件、应用事件与业务自定义事件。
步骤32,对所述多个模块的每个模块进行AOP(Aspect Oriented Programming,面向切面编程)埋点。
步骤321,通过iOS Method Swizzling与Aspects框架对每个模块进行AOP埋点。Method Swizzling操作还包括:新增一个挂钩操作;通过交换所述挂钩操作Hook Action和目前操作Current Action的的IMP,当目前操作被调用时,实际上被调用的是挂钩操作的IMP;当调用挂钩操作时,实际上被调用的是目前操作的IMP。
步骤322,通过Method Swizzling将埋点内容写在每个独立模块的配置文件中。
步骤323,通过Aspects框架将每个独立模块的埋点统计代码与业务的代码进行分离。
Method Swizzling
把Method Swizzling运用到各独立模块中,把埋点内容写在配置文件中。每个模块都有自己独立的埋点配置文件,互相之间不耦合。在每个模块上都实现了AOP方式埋点,使埋点与业务分离。
配置文件中包括埋点的页面名字(PageName:首页)、埋点的事件id(EventId:首页)、按钮点击(MethodName:aibtnaction)与事件名称(EventName:AI机器人点击)。
Method Swizzling本质上就是对IMP(Implementation)和SEL(Selector)进行交换,原理如下:Method Swizzing是发生在运行时的,主要用于在运行时将两个Method进行交换,如图4和图5的调度表(Dispatch Table)所示。
在图4中,selector2原本对应着IMP2,但是为了更方便的实现特定业务需求,在图2中添加了selector3和IMP3,并且让selector2指向了IMP3,而selector3则指向了IMP2(如图5所示),这样就实现了“方法互换”。
Aspects框架
Aspects框架是iOS上的一个轻量级AOP库,提供了2个AOP方法,一个用于类,一个用于实例。在确定hook的方法之后,Aspects框架允许选择hook的时机是在方法执行之前,或是方法执行之后,甚至可以直接替换掉方法的实现。Aspects框架的常见使用情景是log和打点统计等和业务无关的操作。比如hook ViewController的viewWillLayoutSubviews方法。通过使用Aspects框架技术可以把APP埋点统计代码与业务的代码进行分离,这样业务代码可以只管自己开发,埋点代码可以另外单独开发。
本案iOS分模块AOP埋点统计方法使用了BeeHive进行模块化开发,把复杂APP分模块,后用切片编程技术Aspects框架进行AOP埋点。这种非侵入式埋点方法,可以使埋点代码和业务代码分离。通过以上两项技术结合,成功的完善了APP在独立子模块的埋点方法,是APP开发埋点的新选择。
上述本发明实施例序号仅仅为了描述,不代表实施例的优劣。
通过以上的实施方式的描述,可以清楚地了解到上述实施例方法可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件,但很多情况下前者是更佳的实施方式。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质(如ROM/RAM、磁碟、光盘)中,包括若干指令用以使得一台终端设备(可以是手机,计算机,服务器,空调器,或者网络设备等)执行本发明各个实施例所述的方法。
以上仅为本发明的优选实施例,并非因此限制本发明的专利范围,凡是利用本发明说明书及附图内容所作的等效结构或等效流程变换,或直接或间接运用在其他相关的技术领域,均同理包括在本发明的专利保护范围内。
Claims (10)
1.一种埋点统计方法,应用于电子装置中,其特征在于,所述方法包括步骤:
使用BeeHive框架对行动应用程序进行模块化,以获取多个模块;
通过BHModuleManager注册与管理所述多个模块;
对所述多个模块的每个模块进行面向切面编程AOP埋点;及
通过Aspects框架将每个模块的埋点统计代码与业务的代码进行分离,其中,利用所述Aspect框架对所述每个模块进行挂钩Hook,并注入包含了统计逻辑的代码块Block。
2.如权利要求1所述之埋点统计方法,其特征在于,所述方法还包括:
通过iOS Method Swizzling方法与所述Aspects框架对每个模块进行AOP埋点,还包括:
新增一个挂钩操作;
通过交换所述挂钩操作Hook Action和目前操作Current Action的的IMP,当目前操作被调用时,实际上被调用的是挂钩操作的IMP;及
当调用挂钩操作时,实际上被调用的是目前操作的IMP。
3.如权利要求1所述之埋点统计方法,其特征在于,所述方法还包括:
通过所述iOS Method Swizzling方法将埋点内容写在每个模块的配置文件中,并通过Aspects框架将每个独立模块的埋点统计代码与业务的代码进行分离。
4.如权利要求4所述之埋点统计方法,其特征在于,其中,所述配置文件中包括埋点的页面名字、埋点的事件ID、按钮点击与事件名称。
5.一种电子装置,其特征在于,包括:
分模化单元,用于使用BeeHive框架对行动应用程序进行模块化,以获取多个模块,通过BHModuleManager注册与管理所述多个模块;及
埋点单元,用于对所述多个模块的每个模块进行AOP埋点,通过Aspects框架将每个模块的埋点统计代码与业务的代码进行分离,其中,利用所述Aspect框架对所述每个模块进行Hook,并注入包含了统计逻辑的Block。
6.如权利要求5所述之电子装置,其特征在于,所述埋点单元通过iOS MethodSwizzling方法与所述Aspects框架对每个模块进行AOP埋点,还包括:
新增一个挂钩操作;
通过交换所述挂钩操作Hook Action和目前操作Current Action的的IMP,当目前操作被调用时,实际上被调用的是挂钩操作的IMP;及
当调用挂钩操作时,实际上被调用的是目前操作的IMP。
7.如权利要求5所述之电子装置,其特征在于,所述埋点单元通过所述iOS MethodSwizzling方法将埋点内容写在每个模块的配置文件中,并通过Aspects框架将每个独立模块的埋点统计代码与业务的代码进行分离。
8.如权利要求7所述之电子装置,其特征在于,其中,所述配置文件中包括埋点的页面名字、埋点的事件ID、按钮点击与事件名称。
9.一种计算机设备,包括存储器、处理器以及存储在存储器上并可在处理器上运行的计算机程序,其特征在于,所述处理器执行所述计算机程序时实现权利要求1至4任一项之埋点统计方法的步骤。
10.一种计算机可读存储介质,其上存储有计算机程序,其特征在于:所述计算机程序被处理器执行时实现权利要求1至4任一项之埋点统计方法的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910822902.6A CN110704028A (zh) | 2019-09-02 | 2019-09-02 | 埋点统计方法、电子装置及计算机设备 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910822902.6A CN110704028A (zh) | 2019-09-02 | 2019-09-02 | 埋点统计方法、电子装置及计算机设备 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN110704028A true CN110704028A (zh) | 2020-01-17 |
Family
ID=69194094
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201910822902.6A Pending CN110704028A (zh) | 2019-09-02 | 2019-09-02 | 埋点统计方法、电子装置及计算机设备 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN110704028A (zh) |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111651324A (zh) * | 2020-06-02 | 2020-09-11 | 上海泛微网络科技股份有限公司 | 一种日志收集方法、装置 |
CN112230903A (zh) * | 2020-10-12 | 2021-01-15 | 上海赛可出行科技服务有限公司 | 一种基于iOS应用的轻量级解耦式埋点方法及装置 |
CN112764729A (zh) * | 2021-01-08 | 2021-05-07 | 深圳依时货拉拉科技有限公司 | 应用软件开发方法、装置、计算机设备及可读存储介质 |
CN116455917A (zh) * | 2023-06-15 | 2023-07-18 | 上海观安信息技术股份有限公司 | 数据同步方法及装置、电子设备和计算机可读存储介质 |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2017084508A1 (zh) * | 2015-11-17 | 2017-05-26 | 阿里巴巴集团控股有限公司 | 自动埋点方法和装置 |
CN107295050A (zh) * | 2016-04-01 | 2017-10-24 | 阿里巴巴集团控股有限公司 | 前端用户行为统计方法及装置 |
CN107436832A (zh) * | 2016-05-27 | 2017-12-05 | 阿里巴巴集团控股有限公司 | 一种动态埋点的方法、装置及电子设备 |
WO2019100614A1 (zh) * | 2017-11-22 | 2019-05-31 | 平安科技(深圳)有限公司 | 埋点数据处理方法、装置、计算机设备和存储介质 |
CN110099101A (zh) * | 2019-04-01 | 2019-08-06 | 厦门美柚信息科技有限公司 | 一种埋点动态设置的方法、***、设备及其存储介质 |
-
2019
- 2019-09-02 CN CN201910822902.6A patent/CN110704028A/zh active Pending
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2017084508A1 (zh) * | 2015-11-17 | 2017-05-26 | 阿里巴巴集团控股有限公司 | 自动埋点方法和装置 |
CN107295050A (zh) * | 2016-04-01 | 2017-10-24 | 阿里巴巴集团控股有限公司 | 前端用户行为统计方法及装置 |
CN107436832A (zh) * | 2016-05-27 | 2017-12-05 | 阿里巴巴集团控股有限公司 | 一种动态埋点的方法、装置及电子设备 |
WO2019100614A1 (zh) * | 2017-11-22 | 2019-05-31 | 平安科技(深圳)有限公司 | 埋点数据处理方法、装置、计算机设备和存储介质 |
CN110099101A (zh) * | 2019-04-01 | 2019-08-06 | 厦门美柚信息科技有限公司 | 一种埋点动态设置的方法、***、设备及其存储介质 |
Non-Patent Citations (1)
Title |
---|
刘海青;: "一种轻量级的AOP容器实现方法", 软件, no. 03, 15 March 2018 (2018-03-15) * |
Cited By (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111651324A (zh) * | 2020-06-02 | 2020-09-11 | 上海泛微网络科技股份有限公司 | 一种日志收集方法、装置 |
CN111651324B (zh) * | 2020-06-02 | 2023-09-01 | 上海泛微网络科技股份有限公司 | 一种日志收集方法、装置 |
CN112230903A (zh) * | 2020-10-12 | 2021-01-15 | 上海赛可出行科技服务有限公司 | 一种基于iOS应用的轻量级解耦式埋点方法及装置 |
CN112230903B (zh) * | 2020-10-12 | 2024-05-17 | 上海赛可出行科技服务有限公司 | 一种基于iOS应用的轻量级解耦式埋点方法及装置 |
CN112764729A (zh) * | 2021-01-08 | 2021-05-07 | 深圳依时货拉拉科技有限公司 | 应用软件开发方法、装置、计算机设备及可读存储介质 |
CN112764729B (zh) * | 2021-01-08 | 2024-02-06 | 深圳依时货拉拉科技有限公司 | 应用软件开发方法、装置、计算机设备及可读存储介质 |
CN116455917A (zh) * | 2023-06-15 | 2023-07-18 | 上海观安信息技术股份有限公司 | 数据同步方法及装置、电子设备和计算机可读存储介质 |
CN116455917B (zh) * | 2023-06-15 | 2023-09-22 | 上海观安信息技术股份有限公司 | 数据同步方法及装置、电子设备和计算机可读存储介质 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN110704028A (zh) | 埋点统计方法、电子装置及计算机设备 | |
CN107436832B (zh) | 一种动态埋点的方法、装置及电子设备 | |
CN110309051B (zh) | 管理测试用例的方法、***、设备及存储介质 | |
CN111625452A (zh) | 流量回放方法和*** | |
CN106649164B (zh) | 一种硬件接口管理方法 | |
CN107908553B (zh) | 关联测试方法、应用服务器及计算机可读存储介质 | |
CN108021621A (zh) | 数据库数据采集方法、应用服务器及计算机可读存储介质 | |
CN112561370A (zh) | 软件发版的管理方法、装置、计算机设备及存储介质 | |
CN102866932A (zh) | 提供和收集与程序的异常终止相关的数据的方法和设备 | |
CN113259397B (zh) | 一种执行预案的方法、装置、设备及可读存储介质 | |
CN108021486B (zh) | 电子装置、征信数据处理的方法及存储介质 | |
CN113886590A (zh) | 数据汇总方法、装置、计算机设备及存储介质 | |
CN117493188A (zh) | 接口测试方法及装置、电子设备及存储介质 | |
CN112559363A (zh) | 基于全链路标记的测试用例生成方法、***、设备和介质 | |
CN112214384A (zh) | 一种硬盘序列号管理方法、***、终端及存储介质 | |
CN116599881A (zh) | 云平台租户建模测试的方法、装置、设备及存储介质 | |
CN110908644A (zh) | 状态节点的配置方法、装置、计算机设备和存储介质 | |
CN114237634A (zh) | 应用发布风险识别方法、装置、设备、介质、程序产品 | |
CN116187915A (zh) | 一种仓库管理方法、装置、设备及存储介质 | |
CN104965742A (zh) | 一种处理前端任务的自动化脚本及装置 | |
CN114461531A (zh) | 测试用例的平台适应性测试方法、装置、设备及存储介质 | |
CN114115933A (zh) | 软件升级的方法、***、装置、电子设备及介质 | |
CN113297149A (zh) | 数据处理请求的监测方法及装置 | |
CN110716863A (zh) | 一种强制访问控制规则测试方法、***、终端及存储介质 | |
CN109828752A (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 |