当前位置:   article > 正文

浙政钉2.0应用埋点对接——稳定性监控代码(Emas)和流量分析代码(A+)

wpkreporter init fail

之前发过一篇《浙政钉2.0免登》的文章。大致介绍了,我们做的项目系统对接浙政钉免登的流程和步骤。有兴趣的朋友们可以先移步到这篇看看。

幸运的金荷,公众号:梁同学Coding浙政钉2.0免登

趁热打铁吧。这期来说下《浙政钉2.0应用埋点对接--稳定性监控代码(Emas)和流量分析代码(A+)》

好家伙,听着感觉好大高上。我第一次听到时,还以为是哪个专业的毕业论文...

其实就是给前端调用的一份对接文档。Ps:应省大数据局要求,现所有浙政钉应用都需要接入监控。

没错,应用埋点对接主要是前端的活,后端只需要返回一个accountId(浙政钉的用户id)

再这里对接中,前端主要需要bid、sapp_id、sapp_name这三个参数,前端参照文档接入,后端需要返回accountId。

Ps:需要浙政钉h5&小程序应用采集的朋友们,可以在我微信公众号对话框中回复zzd(浙政钉)即可获得。

浙政钉应用采集通用代码及相关说明

背景:

通过应用监控可以帮助应用开发者基于前端、应用等维度,构建应用性能及应用浏览、点击事件等业务监控能力。帮助应用归属部门及单位了解应用的运行及使用情况,获取应用的稳定性及使用数据。用于应用使用情况的衡量、晾晒及体验改进。

说明:

埋点代码分为:稳定性监控代码(Emas)流量分析代码(A+);其中流量分析代码(A+)包含1通用采集SDK、2基础埋点、3用户信息埋点;稳定性监控代码(Emas)只需要在首页加入流量分析代码(A+)每个页面都需要加入,也可以写通用js,在其他页面引入。

下面为埋点通用代码,注意每个应用中稳定性监控中的bid和基础埋点中的sapp_id、sapp_name是不同的,各应用具体参数请查看各自应用埋点信息(代码中已标注,需要按实际参数替换)

具体的埋点开发可以参考《浙政钉h5&小程序应用采集开发手册》 

稳定性监控

  1. <script src='https://wpk-gate.zjzwfw.gov.cn/static/wpk-jssdk.1.0.2/wpkReporter.js' crossorigin='true'></script>
  2. <script>
  3. try {
  4. const config = {
  5. bid: '************',
  6. signkey: '1234567890abcdef',
  7. gateway: 'https://wpk-gate.zjzwfw.gov.cn'
  8. };
  9. const wpk = new wpkReporter(config);
  10. wpk.installAll();
  11. window._wpk = wpk;
  12. } catch (err) {
  13. console.error('WpkReporter init fail', err);
  14. }
  15. </script>

流量分析

1. 通用采集 SDK

  1. <script>
  2. (function(w, d, s, q, i) {
  3. w[q] = w[q] || [];
  4. var f = d.getElementsByTagName(s)[0],j = d.createElement(s);
  5. j.async = true;
  6. j.id = 'beacon-aplus';
  7. j.src = 'https://alidt.alicdn.com/alilog/mlog/aplus_cloud.js';
  8. f.parentNode.insertBefore(j, f);
  9. })(window, document, 'script', 'aplus_queue');
  10. aplus_queue.push({
  11. action: 'aplus.setMetaInfo',
  12. arguments: ['aplus-rhost-v', 'alog.zjzwfw.gov.cn']
  13. });
  14. aplus_queue.push({
  15. action: 'aplus.setMetaInfo',
  16. arguments: ['aplus-rhost-g', 'alog.zjzwfw.gov.cn']
  17. });
  18. var u = navigator.userAgent
  19. var isAndroid = u.indexOf('Android') > -1
  20. var isIOS = !!u.match(/\(i[^;]+;( U;)? CPU.+Mac OS X/)
  21. aplus_queue.push({
  22. action: 'aplus.setMetaInfo',
  23. arguments: ['appId', isAndroid ? '28302650' : isIOS ? '28328447' : '47130293']
  24. });
  25. </script>

2. 基础埋点

  1. // 单页应用 或 “单个页面”需异步补充PV日志参数还需进行如下埋点:
  2. aplus_queue.push({
  3. action: 'aplus.setMetaInfo',
  4. arguments: ['aplus-waiting', 'MAN']
  5. });//
  6. // 单页应用路由切换后 或 在异步获取到pv日志所需的参数后再执行sendPV:
  7. aplus_queue.push({
  8. 'action':'aplus.sendPV',
  9. 'arguments':[{
  10. is_auto: false
  11. }, {
  12. // 当前你的应用信息,此两行按应用实际参数修改,不可自定义。
  13. sapp_id: '*****',
  14. sapp_name: '*********',
  15. // 自定义PV参数key-value键值对(只能是这种平铺的json,不能做多层嵌套),如:
  16. x: 111,
  17. y: 222
  18. }]
  19. })

3. 用户信息埋点

  1. // 如采集用户信息是异步行为需要先执行这个BLOCK埋点
  2. aplus_queue.push({
  3. action: 'aplus.setMetaInfo',
  4. arguments: ['_hold', 'BLOCK']
  5. });
  6. // 设置会员昵称
  7. aplus_queue.push({
  8. action: "aplus.setMetaInfo",
  9. arguments: ["_user_nick", "当前会员用户昵称"]
  10. });
  11. // 设置会员ID
  12. aplus_queue.push({
  13. action: "aplus.setMetaInfo",
  14. arguments: ["_user_id", "当前会员ID"]
  15. });
  16. aplus_queue.push({
  17. action: "aplus.setMetaInfo",
  18. arguments: ["_dev_id", "yourDeviceId"]
  19. });
  20. // 如采集用户信息是异步行为,需要先设置完用户信息后再执行这个START埋点
  21. // 此时被block住的日志会携带上用户信息逐条发出
  22. aplus_queue.push({
  23. action: 'aplus.setMetaInfo',
  24. arguments: ['_hold', 'START']
  25. });

接入成功示意图:

想看前面几期文章 请点击下列图片

收藏 | 湖南省各地教师公务员等实际工资爆料


收藏 | 广东省各地教师公务员等实际工资爆料


收藏 | 江苏省各地教师公务员等实际工资爆料

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/AllinToyou/article/detail/247985
推荐阅读
相关标签
  

闽ICP备14008679号