一种基于Android的松耦合、高扩展性无埋点数据采集方法与流程

专利查询2023-9-18  147


一种基于android的松耦合、高扩展性无埋点数据采集方法
技术领域
1.本发明涉及数据采集技术领域,具体涉及一种基于android的松耦合、高扩展性无埋点数据采集方法。


背景技术:

2.伴随ip技术发展、终端智能化、业务apk化,各类智能终端机顶盒(安卓智能操作系统,以下简称“智能机顶盒”)支持的新业务越来越多,越来越复杂。智能机顶盒运行智能操作系统,具备强大的cpu运算能力、大容量的内存和flash存储空间。基于iptv等业务特性(包括各地播控方、第三方应用apk等),智能机顶盒运行大量的apk软件程序,各功能运行复杂,第三方apk内部数据无法实时获取,提升产品运营价值、发挥数据更大价值的手段有所缺失。
3.因此针对智能机顶盒的运营管理工作,需要充分利用远程化、系统化、数据化、智能化等“主动”运营理念的技术手段,在智能机顶盒运行状态掌握、全量数据获取等多方面增强终端的管控能力:包含全量数据采集、清洗和可视化,支持数据采集和可视化的动态配置,应对apk或数据采集需求频繁变动的需求。
4.基于iptv和ott新业务遇到的具体问题:如何能更全量获取终端数据,并发挥数据更大价值;如何能更高效管控盒子,远程解决各省反馈的问题;如何提升现有通道获取的数据因多含加密数据影响的投入产出效率问题。通过智能机顶盒数据补全后,为后续优化iptv增值业务,用户画像分析、第三方应用引入等提供决策依据,提升整体业务运营价值。
[0005]“大数据运营”是运营商的主要发展方向之一,数据也是业务的基础,传统方式是终端侧的探针系统和网络关键节点侧的dpi(数据分组深度检测)系统,都是管道侧的网络分析,随着应用网络数据加密的普及,分析结果包含信息越来越少,例如只能分析到使用过微信,看过腾讯视频。而应用自身采集的数据,往往都不会提供给运营商。
[0006]
有鉴于此,如今迫切需要设计一种新的数据采集方式,以便克服存在的上述缺陷。


技术实现要素:

[0007]
本发明为了克服以上技术的不足,提供了一种既可以实现全量数据采集,也可自定义数据采集项,降低服务器负载的基于android的松耦合、高扩展性无埋点数据采集方法。
[0008]
本发明克服其技术问题所采用的技术方案是:一种基于android的松耦合、高扩展性无埋点数据采集方法,其特征在于,包括如下步骤:a)设置日志采集模块,所述日志采集模块由若干智能终端构成,每个智能终端由logcat及日志处理引擎构成,logcat为android原始日志,日志处理引擎读取android原始日志,根据服务器下发的正则表达式,对android原始日志进行过滤,生成对应的json结构化数据;
b)设置数据存储模块,所述数据存储模块分为mysql数据库和kafka缓存,将mysal型的json结构化数据存储到mysql数据库中,将kafka型的json结构化数据存储到kafka缓存中;c)设置数据聚合索引模块,所述数据聚合索引模块对数据存储模块中的json结构化数据按照每个字段进行索引;d)设置数据可视化模块,所述数据可视化模块将索引后的数据进行展示。
[0009]
进一步的,步骤a)中通过配置对应的level和tag对android原始日志进行过滤,将过滤后的android原始日志存储到内存中。
[0010]
进一步的,步骤a)中json结构化数据包含终端id、业务名称、事件名称、发生时间和自定义信息。
[0011]
进一步的,步骤a)中将json结构化数据通过apk上传到头端服务器。
[0012]
进一步的,步骤c)中数据聚合索引模块由logstash及elasticsearch构成,logstash接收kafka型的json结构化数据以及mysql型的json结构化数据后转给elasticsearch,elasticsearch对kafka型的json结构化数据和mysql型的json结构化数据进行索引、聚合,使对应的数据按照每个字段进行索引。
[0013]
进一步的,步骤d)中数据聚合索引模块由klbana构成。
[0014]
本发明的有益效果是:无埋点数据采集相较于传统埋点数据采集,有着采集数据更全面、无需埋点方便快捷、降低人员开发工作量、等优点,本发明在传统无埋点的数据采集上进行优化,支持数据采集的动态配置功能,能够自动配置对应的数据采集项,支持全量数据采集,采集结果结构化、自定义。与普通无埋点数据采集方式相比,通过封装改进的liblogcat,既可以实现全量数据采集,也可自定义数据采集项,降低服务器负载。
附图说明
[0015]
图1为本发明的无埋点数据采集流程图;图2为本发明的无埋点数据采集原理图。
具体实施方式
[0016]
下面结合附图1、附图2对本发明做进一步说明。
[0017]
一种基于android的松耦合、高扩展性无埋点数据采集方法,其特征在于,包括如下步骤:a)设置日志采集模块,日志采集模块由若干智能终端构成,每个智能终端由logcat及日志处理引擎构成,logcat为android原始日志,日志处理引擎读取android原始日志,根据服务器下发的正则表达式,对android原始日志进行过滤,生成对应的json结构化数据。
[0018]
b)设置数据存储模块,所述数据存储模块分为mysql数据库和kafka缓存,将mysal型的json结构化数据存储到mysql数据库中,将kafka型的json结构化数据存储到kafka缓存中。mysal支持数据的增量存储、支持自我修复式集群,由于数据量越高查询速度越慢,所以需要根据数据上报量指定数据清理日期。
[0019]
c)设置数据聚合索引模块,数据聚合索引模块对数据存储模块中的json结构化数
据按照每个字段进行索引;d)设置数据可视化模块,数据可视化模块将索引后的数据进行展示。
[0020]
无埋点数据采集相较于传统埋点数据采集,有着采集数据更全面、无需埋点方便快捷、降低人员开发工作量、等优点,本发明在传统无埋点的数据采集上进行优化,支持数据采集的动态配置功能,能够自动配置对应的数据采集项,支持全量数据采集,采集结果结构化、自定义。与普通无埋点数据采集方式相比,通过封装改进的liblogcat,既可以实现全量数据采集,也可自定义数据采集项,降低服务器负载。
[0021]
实施例1:步骤a)中通过配置对应的level和tag对android原始日志进行过滤,将过滤后的android原始日志存储到内存中。步骤a)中json结构化数据包含终端id、业务名称、事件名称、发生时间和自定义信息。步骤a)中将json结构化数据通过apk上传到头端服务器。通过apk向kafka的topic中吐数据,kafka的优点是高吞吐量、低延迟,kafka每秒可以处理几十万条消息,它的延迟最低只有几毫秒,还具有可扩展性,kafka集群支持热扩展,具有持久性、可靠性,消息被持久化到本地磁盘,并且支持数据备份,防止数据丢失。允许集群找那个节点失败(若副本数量为n,则允许n-1个节点失败),支持数千个客户端同时读写。
[0022]
实施例2:步骤c)中数据聚合索引模块由logstash及elasticsearch构成,logstash接收kafka型的json结构化数据以及mysql型的json结构化数据后转给elasticsearch,elasticsearch对kafka型的json结构化数据和mysql型的json结构化数据进行索引、聚合,使对应的数据按照每个字段进行索引。
[0023]
实施例3:步骤d)中数据聚合索引模块由klbana构成。通过elasticsearch的索引,可以对数据进行简单的规则计算,生产对应的数据表格、饼图,支持配置的导入和导出功能。
[0024]
最后应说明的是:以上所述仅为本发明的优选实施例而已,并不用于限制本发明,尽管参照前述实施例对本发明进行了详细的说明,对于本领域的技术人员来说,其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换。凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。

技术特征:
1.一种基于android的松耦合、高扩展性无埋点数据采集方法,其特征在于,包括如下步骤:a)设置日志采集模块,所述日志采集模块由若干智能终端构成,每个智能终端由logcat及日志处理引擎构成,logcat为android原始日志,日志处理引擎读取android原始日志,根据服务器下发的正则表达式,对android原始日志进行过滤,生成对应的json结构化数据;b)设置数据存储模块,所述数据存储模块分为mysql数据库和kafka缓存,将mysal型的json结构化数据存储到mysql数据库中,将kafka型的json结构化数据存储到kafka缓存中;c)设置数据聚合索引模块,所述数据聚合索引模块对数据存储模块中的json结构化数据按照每个字段进行索引;d)设置数据可视化模块,所述数据可视化模块将索引后的数据进行展示。2.根据权利要求1所述的基于android的松耦合、高扩展性无埋点数据采集方法,其特征在于:步骤a)中通过配置对应的level和tag对android原始日志进行过滤,将过滤后的android原始日志存储到内存中。3.根据权利要求1所述的基于android的松耦合、高扩展性无埋点数据采集方法,其特征在于:步骤a)中json结构化数据包含终端id、业务名称、事件名称、发生时间和自定义信息。4.根据权利要求1所述的基于android的松耦合、高扩展性无埋点数据采集方法,其特征在于:步骤a)中将json结构化数据通过apk上传到头端服务器。5.根据权利要求1所述的基于android的松耦合、高扩展性无埋点数据采集方法,其特征在于:步骤c)中数据聚合索引模块由logstash及elasticsearch构成,logstash接收kafka型的json结构化数据以及mysql型的json结构化数据后转给elasticsearch,elasticsearch对kafka型的json结构化数据和mysql型的json结构化数据进行索引、聚合,使对应的数据按照每个字段进行索引。6.根据权利要求1所述的基于android的松耦合、高扩展性无埋点数据采集方法,其特征在于:步骤d)中数据聚合索引模块由klbana构成。

技术总结
一种基于Android的松耦合、高扩展性无埋点数据采集方法,无埋点数据采集相较于传统埋点数据采集,有着采集数据更全面、无需埋点方便快捷、降低人员开发工作量、等优点,本发明在传统无埋点的数据采集上进行优化,支持数据采集的动态配置功能,能够自动配置对应的数据采集项,支持全量数据采集,采集结果结构化、自定义。与普通无埋点数据采集方式相比,通过封装改进的liblogcat,既可以实现全量数据采集,也可自定义数据采集项,降低服务器负载。降低服务器负载。降低服务器负载。


技术研发人员:陈家豪 黄洋 陈付祥 李鹏
受保护的技术使用者:山东浪潮云缦智能科技有限公司
技术研发日:2021.11.30
技术公布日:2022/3/8

最新回复(0)