一种埋点数据上报方法、装置、电子设备及可读存储介质

文档序号:467931 发布日期:2021-12-31 浏览:2次 >En<

阅读说明:本技术 一种埋点数据上报方法、装置、电子设备及可读存储介质 (Buried point data reporting method and device, electronic equipment and readable storage medium ) 是由 欧阳耀锦 杨丰玮 王沅召 宋德超 甄志坚 于 2021-09-29 设计创作,主要内容包括:本申请涉及一种埋点数据上报方法、装置、电子设备及可读存储介质,通过采集埋点数据,并将采集到的埋点数据进行缓存;将缓存的埋点数据量与缓存阈值进行比较,并确定比较结果;当比较结果为缓存的埋点数据量达到缓存阈值时,暂停采集埋点数据,并获取终端当前的网络状态;根据终端当前的网络状态确定缓存的埋点数据的上报方式;采用确定出的上报方式对缓存的埋点数据进行上报;其中,使得缓存的埋点数据量控制在缓存阈值内,避免了无休止采集并缓存埋点数据的问题,同时避免了缓存的埋点数据量过多,导致上报缓存的埋点数据时占用带宽用户网络资源过多,影响用户体验的问题。(The application relates to a buried point data reporting method, a buried point data reporting device, electronic equipment and a readable storage medium, wherein the buried point data is collected and cached; comparing the cached buried point data quantity with a cache threshold value, and determining a comparison result; when the comparison result shows that the cached buried point data amount reaches the cache threshold value, the acquisition of the buried point data is suspended, and the current network state of the terminal is obtained; determining a reporting mode of cached buried point data according to the current network state of the terminal; reporting the cached buried point data by adopting the determined reporting mode; the cached buried point data quantity is controlled within the caching threshold value, the problem of endless acquisition and caching of the buried point data is avoided, and meanwhile, the problem that too much bandwidth user network resources are occupied when the cached buried point data is reported and user experience is influenced due to too much cached buried point data is avoided.)

一种埋点数据上报方法、装置、电子设备及可读存储介质

技术领域

本申请涉及通信技术领域,尤其涉及一种埋点数据上报方法、装置、电子设备及可读存储介质。

背景技术

近年来移动互联网呈井喷式发展,从衣食住行各个方面改变着人们的生活。移动智能设备,如手机、掌上电脑、可穿戴智能设备等等,的种类也越来越多。移动智能设备上的应用程序(App)技术在这个阶段得到了充分的发展,各行各业开发出来的APP种类和数量都呈指数增长。随之而来的数据搜集和采集工作也变成了产品和决策层不可规避的工作。

数据采集上报技术由来已久,在个人计算机(PC)领域,数据采集上报技术已经发展得很成熟,由此还产生了“大数据”的概念。针对PC的数据采集,由于其本身资源相对充裕,且随着硬件技术和通信技术的持续发展越来越充裕,PC采集数据的方式相对粗放,既没有考虑到网络流量,也没有考虑设备用电量、设备的系统资源消耗。

在目前的移动智能设备领域,数据采集上报的技术方案依然沿用PC机的数据采集上报技术。即在移动智能设备的程序中设置数据埋点,所述数据埋点就是在程序代码的关键部位植入数据采集统计代码,用来追踪每次用户点击/行为,统计关键功能的使用次数,或者通过植入多段代码追踪用户连续行为,以及通过建立模型来量化用户操作行为。

在现有的埋点数据采集上报技术中,采集埋点数据时,通常会将采集到的埋点数据缓存起来,到了一定数据量再把数据上报到服务器。但是,如果出现断网等无法及时上报缓存的埋点数据的情况下,会持续采集埋点数据并进行缓存,缓存的埋点数据量可能会越来越大,占用过多的存储资源,随着缓存的埋点数据量的增加,导致上传时占用用户网络资源增加,影响用户的网络使用,造成不良的用户体验。

发明内容

本申请提供了一种埋点数据上报方法、装置、电子设备及可读存储介质,以解决相关技术中,终端不能及时上报缓存的埋点数据时,持续采集埋点数据并对采集到的埋点数据进行缓存,导致上报缓存的埋点数据时占用带宽用户网络资源增加,影响用户体验的问题。

第一方面,本申请提供了一种埋点数据上报方法,所述埋点数据上报方法包括:采集埋点数据,并将采集到的埋点数据进行缓存;将缓存的埋点数据量与缓存阈值进行比较,并确定比较结果;当所述比较结果为所述缓存的埋点数据量达到缓存阈值时,暂停采集埋点数据,并获取终端当前的网络状态;根据所述终端当前的网络状态确定缓存的埋点数据的上报方式;采用确定出的所述上报方式对缓存的埋点数据进行上报。

第二方面,本申请提供了一种埋点数据上报装置,所述埋点数据上报装置包括:采集装置,用于采集埋点数据,并将采集到的埋点数据进行缓存;比较装置,用于将缓存的埋点数据量与缓存阈值进行比较,并确定比较结果;获取装置,用于当所述比较结果为所述缓存的埋点数据量达到缓存阈值时,暂停采集埋点数据,并获取终端当前的网络状态;确定装置,用于根据所述终端当前的网络状态确定缓存的埋点数据的上报方式;上报装置,用于采用确定出的所述上报方式对缓存的埋点数据进行上报。

第三方面,提供了一种电子设备,包括处理器、通信接口、存储器和通信总线,其中,处理器,通信接口,存储器通过通信总线完成相互间的通信;

存储器,用于存放计算机程序;

处理器,用于执行存储器上所存放的程序时,实现第一方面任一项实施例所述的埋点数据上报方法的步骤。

第四方面,提供了一种计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时实现如第一方面任一项实施例所述的埋点数据上报方法的步骤。

本申请实施例提供的上述技术方案与现有技术相比具有如下优点:

本申请实施例提供的该方法,通过采集埋点数据,并将采集到的埋点数据进行缓存;将缓存的埋点数据量与缓存阈值进行比较,并确定比较结果;当所述比较结果为所述缓存的埋点数据量达到缓存阈值时,暂停采集埋点数据,并获取终端当前的网络状态;根据所述终端当前的网络状态确定缓存的埋点数据的上报方式;采用确定出的所述上报方式对缓存的埋点数据进行上报;其中,使得缓存的埋点数据量控制在缓存阈值内,避免了无休止采集并缓存埋点数据的问题,节约了系统资源;同时,根据网络状态来确定是否对缓存的埋点数据进行上报,避免了盲目上报对带宽造成影响的问题,保证了用户的使用体验;避免了终端不能及时上报缓存的埋点数据时,持续采集埋点数据并对采集到的埋点数据进行缓存,导致上报缓存的埋点数据时占用带宽用户网络资源增加,影响用户体验的问题。

附图说明

此处的附图被并入说明书中并构成本说明书的一部分,示出了符合本发明的实施例,并与说明书一起用于解释本发明的原理。

为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,对于本领域普通技术人员而言,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。

图1为本申请实施例提供的一种埋点数据上报方法的基本流程示意图;

图2为本申请实施例提供的一种可选的埋点数据上报方法的基本流程示意图;

图3为本申请实施例提供的一种埋点数据上报装置的流程示意图;

图4为本申请实施例提供的一种电子设备的结构示意图。

具体实施方式

为使本申请实施例的目的、技术方案和优点更加清楚,下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本申请的一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动的前提下所获得的所有其他实施例,都属于本申请保护的范围。

图1为本申请实施例提供的一种埋点数据上报方法的流程示意图,该方法包括但不限于:

S101、采集埋点数据,并将采集到的埋点数据进行缓存;

需要理解的是,本实施例提供的埋点数据上报方法可以以各种形式来实施。例如,本发明中描述的埋点数据上报方法可以通过终端来实现,其中,终端包括诸如手机、平板电脑、笔记本电脑、掌上电脑、个人数字助理(Personal Digital Assistant,PDA)、便捷式媒体播放器(Portable Media Player,PMP)、导航装置等移动终端,以及诸如数字TV、台式计算机等固定终端。后续描述中将以移动终端为例进行说明,本领域技术人员将理解的是,除了特别用于移动目的的元件之外,根据本发明的实施方式的构造也能够应用于固定类型的终端。承接上例,也即,本示例提供的方法是由终端来采集埋点数据,具体的,可以是由终端内的应用程序(APP)来采集埋点数据,并将采集到的埋点数据进行缓存,其中,缓存是缓存到终端自身的内存或是其他存储介质内。

S102、将缓存的埋点数据量与缓存阈值进行比较,并确定比较结果;

需要理解的是,其中缓存阈值用于表征埋点数据最大的缓存容量。

S103、当所述比较结果为所述缓存的埋点数据量达到缓存阈值时,暂停采集埋点数据,并获取终端当前的网络状态;

其中,缓存的埋点数据量达到缓存阈值包括缓存的埋点数据量等于或大于缓存阈值。

S104、根据所述终端当前的网络状态确定缓存的埋点数据的上报方式;

需要理解的是,缓存的埋点数据的上报方式随终端当前的网络状态的改变而改变,后续会进行详细说明。

S105、采用确定出的所述上报方式对缓存的埋点数据进行上报。

本实施例提供的埋点数据上报方法,通过采集埋点数据,并将采集到的埋点数据进行缓存;将缓存的埋点数据量与缓存阈值进行比较,并确定比较结果;当所述比较结果为所述缓存的埋点数据量达到缓存阈值时,暂停采集埋点数据,并获取终端当前的网络状态;根据所述终端当前的网络状态确定缓存的埋点数据的上报方式;采用确定出的所述上报方式对缓存的埋点数据进行上报;其中,使得缓存的埋点数据量控制在缓存阈值内,避免了无休止采集并缓存埋点数据的问题,节约了存储资源;同时,根据网络状态来确定是否对缓存的埋点数据进行上报,避免了盲目上报对带宽造成影响的问题,保证了用户的使用体验;避免了终端不能及时上报缓存的埋点数据时,持续采集埋点数据并对采集到的埋点数据进行缓存,导致上报缓存的埋点数据时占用带宽用户网络资源增加,影响用户体验的问题。

在本实施例的一些示例中,采集埋点数据,并将采集到的埋点数据进行缓存包括:当已设置埋点的应用程序上设置了唯一标识时,通过所述已设置埋点的应用程序采集埋点数据;将采集到的埋点数据与所述唯一标识进行绑定,并将绑定完成的埋点数据进行缓存。其中唯一标识可以是诸如为用户分配的账户密码、终端的识别码等,其中,应用程序设置了唯一标识可以是接收了输入的账户密码,进行了账户登录;还可以是应用程序自动获取了终端的识别码进而设置了唯一标识;例如,当已设置埋点的应用程序上进行了账户密码登录时,通过该应用程序采集埋点数据,使得采集的埋点数据与该账户进行绑定后进行缓存,使得缓存的埋点数据上报后能够对其进行溯源,知道上报的埋点数据的来源;在一些示例中,还可以在设置埋点的应用程序未设置唯一标识时,直接采集埋点数据,并进行缓存。

在本实施例的一些示例中,在所述比较结果为所述缓存的埋点数据量达到缓存阈值之前,所述方法还包括:当确定所述终端当前的网络状态为第一状态、且所述缓存的埋点数据量达到上报阈值时,对缓存的埋点数据进行上报,其中,所述第一状态为支持上报埋点数据的网络状态;和/或当确定所述终端当前的网络状态为所述第一状态、且满足上报周期时,对缓存的埋点数据进行上报。其中,可以根据终端目前的联网状态、网络使用状态确定终端当前是否为支持上报埋点数据的网络状态,例如,当终端未联网,或是终端通过2G、3G、4G、5G等任一移动网络进行联网,或是终端通过任一网络进行联网,但此时终端运行游戏等需要高质量网络的应用时,判定终端当前的网络状态为不支持上报埋点数据的网络状态;当终端通过移动热点WiFi进行联网,或是终端通过任一网络进行联网时,或是终端通过任一网络进行联网时,但此时终端并未运行游戏等需要高质量网络的应用时,判定终端当前的网络状态为支持上报埋点数据的网络状态。

承接上例,在一些示例中,当确定所述终端当前的网络状态为支持上报埋点数据的网络状态时,且所述缓存的埋点数据量达到上报阈值时,会将缓存的埋点数据进行上报,其中,上报阈值会小于缓存阈值;应当理解的是,可以是当缓存的埋点数据量达到上报阈值时,再去判断终端当前的网络状态是否为支持上报埋点数据的网络状态;也可以是当判定终端当前的网络状态为支持上报埋点数据的网络状态,再去判断缓存的埋点数据量是否达到上报阈值,本实施例并不做限制,可以由相关人员灵活设置。

承接上例,在一些示例中,当确定所述终端当前的网络状态为所述第一状态、且满足上报周期时,对缓存的埋点数据进行上报;例如,当上报周期为一小时一次时,则每过一小时则上报一次缓存的埋点数据,也即,即使在缓存的埋点数据量未达到上报阈值时,只要满足了上报周期时,也会对缓存的埋点数据进行上报;例如,可以通过计时器进行计时,当计时器达到一小时的时候,则对缓存的埋点数据进行上报,需要理解的是,在满足任一规则将缓存的埋点数据进行上报后,则会重置上报周期,重新开始计时。

需要理解的是,将缓存的埋点数据量与缓存阈值进行比较,并确定比较结果,其中,缓存阈值的容量大于上报阈值的容量。例如,当缓存阈值为8M,缓存的埋点数据量为7M时,此时,因为缓存的埋点数据量7M小于缓存阈值8M,因此,判定所述比较结果为所述缓存的埋点数据量未达到缓存阈值;再例如,当缓存阈值为8M,缓存的埋点数据量为8M时,此时,因为缓存的埋点数据量8M等于缓存阈值8M,因此,判定所述比较结果为所述缓存的埋点数据量已经达到缓存阈值。应当注意的是,本实施例并不限定缓存阈值为8M,可以由相关人员灵活设置缓存阈值的大小。

在本实施例的一些示例中,获取终端当前的网络状态包括:按照预设获取周期获取所述终端当前的网络状态;也即,当所述比较结果为所述缓存的埋点数据量达到缓存阈值时,可以按照预设周期获取所述终端当前的网络状态;在一些示例中,当所述比较结果为所述缓存的埋点数据量达到缓存阈值时,可以实时获取所述终端的网络状态。

在本实施例的一些示例中,根据所述终端当前的网络状态确定缓存的埋点数据的上报方式包括:当所述终端当前的网络状态为第一状态时,确定缓存的数据的上报方式为立即上报;当所述终端当前的网络状态为第二状态时,确定缓存的数据的上报方式为当所述终端的网络状态发生改变时,进行上报,所述第二状态为不支持上报埋点数据的网络状态;其中,当所述终端当前的网络状态为第二状态时,确定缓存的数据的上报方式为当所述终端的网络状态发生改变时,进行上报;也即,若当前的网络状态为第二状态时,则不会将缓存的埋点数据进行上报,知道当前的网络状态切换为第一状态时,才会将缓存的埋点数据进行上报。

在本实施例的一些示例中,采用确定出的所述上报方式对缓存的埋点数据进行上报包括:当所述上报方式为所述立即上报时,将缓存的埋点数据分为多个子缓存数据;依次将所述子缓存数据进行上报。需要理解的是,在一些示例中,缓存分为的子缓存数据中,各个子缓存数据的数据量不超过上报阈值;例如,缓存的埋点数据量为9M,上报阈值为2M,则将缓存的埋点数据以2M为单位,分为五个子缓存数据,然后依次将5个子缓存数据上传;在一些示例中,还可以是一次性直接将缓存的埋点数据进行上传,例如,缓存阈值为9M,缓存的埋点数据量为9M,则一次性将缓存的所有埋点数据都进行上报,由于设置了缓存阈值,上报的数据量始终在缓存阈值的范围内,不会囤积过多的埋点数据,因此,也不会在上报时,因为埋点数据囤积占用过多网络资源,影响用户体验。

在本实施例的一些示例中,采用确定出的所述上报方式对缓存的埋点数据进行上报之后,所述方法还包括:将已经上报完成的埋点数据进行删除,并恢复采集埋点数据。

本实施例提供的埋点数据上报方法,先采集埋点数据,并将采集到的埋点数据进行缓存;然后将缓存的埋点数据量与缓存阈值进行比较,并确定比较结果;当所述比较结果为所述缓存的埋点数据量达到缓存阈值时,暂停采集埋点数据,并获取终端当前的网络状态;根据所述终端当前的网络状态确定缓存的埋点数据的上报方式;采用确定出的所述上报方式对缓存的埋点数据进行上报;其中,通过设置缓存阈值,在缓存的埋点数据量达到缓存阈值时,暂停采集埋点数据,并通过终端当前的网络状态确定已缓存的埋点数据量的上报方式,进行上报,使得缓存的埋点数据控制在一定范围,后续上报时不会影响带宽,保证了用户的使用体验;避免了终端持续采集埋点数据并对采集到的埋点数据进行缓存时,导致在上报缓存的埋点数据时占用带宽用户网络资源,影响用户体验的问题。

为了更好的理解本发明,本实施例提供一种更为具体的示例对本发明进行说明,本实施例提供一种埋点数据上报方法,如图2所示,所述方法包括但不限于:

S201、采集埋点数据,并将采集到的埋点数据进行缓存;

需要理解的是,本申请的执行主体为用户终端,包括但不限于终端上的APP,执行方式为数据上报,数据来源为设置在APP上的埋点采集到的埋点数据,上报机制为根据采样率和缓存的埋点数据包大小决定上报时机。

承接上例,本实施方案要求用户终端上下载了已设置埋点的APP,用户在APP上注册登录账号,进而上报的埋点数据均与改账号绑定。用户在终端上登录账号后,APP开始收集终端的埋点数据。

S202、判断收集的埋点数据的数据量是否达到缓存阈值,如是,转到S203,若否转到S206;

需要理解的是,本实施例在缓存机制中添加缓存阈值limit、上报阈值size、上报周期time字段,其中,limit为缓存的埋点数据最大容量,缓存的埋点数据量超过该大小后,将不再采集,size为上报最大容量,缓存的埋点数据达到该大小后就马上上报,time为采样率,就是上报周期,间隔一段时间即使没达到size大小也会上报。

S203、停止收集埋点数据,然后判断终端是否联网,如是,转到S204;若否、转到S205;

需要理解的是,当缓存的埋点数据量达到阈值时,APP停止手机埋点数据,然后判断终端当前是否联网;

S204、对缓存的埋点数据进行上报;

需要理解的是,当终端当前联网时,则终端的APP将所有缓存的埋点数据一次上报。

S205、等待终端恢复网络,然后采集将埋点数据上报;

需要理解的是,当终端当前没有联网时,则等待终端恢复为联网状态,当终端恢复为联网状态时,则终端的APP将所有缓存的埋点数据一次上报。

S206、判断终端是否联网,如是,转到S207;如否,则转到S201;

需要理解的是,当缓存的埋点数据量小于缓存阈值时,需要判断终端当前是否联网;如果终端没有联网,继续收集埋点数据。假设终端一直没有网络,数据量在达到limit的时候,APP停止收集埋点数据,等待网络。如果终端有网络执行下一步;

S207、判断缓存的埋点数据量是否达到上报阈值,如是,转到S204;如否,转到S208

需要理解的是,判断收集的埋点数据是否达到size,如果数据量达到size,APP上报缓存的埋点数据,如果数据量没有达到size,执行S208;

S208判断APP距离上一次上报缓存的埋点数据的时间差是否达到time,如是,转到S204;如否,转到S201;

需要理解的是,终端判断APP距离上一次上报的时间差是否达到time,如果达到,APP上报埋点数据,如果时间差没有达到time,APP继续收集埋点数据,如果达到,APP上报埋点数据,如果时间差没有达到time,APP继续收集埋点数据。

本实施例提供的埋点数据上报方法,当上报埋点数据时出现异常时,APP可以先将埋点数据缓存起来,判断终端是否有网络,如果有网络,这继续尝试上报,如果没有网络,则等待网络,一旦终端恢复网络,立即将埋点数据上报上去,然后清除缓存,避免了终端断网时,埋点数据无限制的被采集缓存起来,直到设备恢复网络,缓存的埋点数据量过大,在上报的时候会明显占用带宽,造成不良的用户体验的问题。

本申请实施例还提供了一种埋点数据上报装置,如图3所示,其包括但不限于:

采集装置1,用于采集埋点数据,并将采集到的埋点数据进行缓存;

比较装置2,用于将缓存的埋点数据量与缓存阈值进行比较,并确定比较结果;

获取装置3,用于当所述比较结果为所述缓存的埋点数据量达到缓存阈值时,暂停采集埋点数据,并获取终端当前的网络状态;

确定装置4,用于根据所述终端当前的网络状态确定缓存的埋点数据的上报方式;

上报装置5,用于采用确定出的所述上报方式对缓存的埋点数据进行上报。

如图4所示,本申请实施例提供了一种电子设备,包括处理器111、通信接口112、存储器113和通信总线114,其中,处理器111,通信接口112,存储器113通过通信总线114完成相互间的通信,

存储器113,用于存放计算机程序;

在本申请一个实施例中,处理器111,用于执行存储器113上所存放的程序时,实现前述任意一个方法实施例提供的埋点数据上报方法,包括:采集埋点数据,并将采集到的埋点数据进行缓存;将缓存的埋点数据量与缓存阈值进行比较,并确定比较结果;当所述比较结果为所述缓存的埋点数据量达到缓存阈值时,暂停采集埋点数据,并获取终端当前的网络状态;根据所述终端当前的网络状态确定缓存的埋点数据的上报方式;采用确定出的所述上报方式对缓存的埋点数据进行上报。

本申请实施例还提供了一种可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时实现如前述任意一个方法实施例提供的埋点数据上报方法的步骤。

需要说明的是,在本文中,诸如“第一”和“第二”等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。

以上所述仅是本发明的具体实施方式,使本领域技术人员能够理解或实现本发明。对这些实施例的多种修改对本领域的技术人员来说将是显而易见的,本文中所定义的一般原理可以在不脱离本发明的精神或范围的情况下,在其它实施例中实现。因此,本发明将不会被限制于本文所示的这些实施例,而是要符合与本文所申请的原理和新颖特点相一致的最宽的范围。

13页详细技术资料下载
上一篇:一种医用注射器针头装配设备
下一篇:一种面向资源消耗性应用的认知服务缓存方法和系统

网友询问留言

已有0条留言

还没有人留言评论。精彩留言会获得点赞!

精彩留言,会给你点赞!

技术分类