浙政钉埋点 -- 稳定性监控代码(Emas)和流量分析代码(A+)

本文详细介绍了在浙政钉H5应用中实现用户行为数据采集的埋点技术,包括稳定性监控代码(Emas)和流量分析代码(A+)的集成。通过在index.html中引入相应脚本,并配置bid、signkey等参数,实现对用户页面访问、按钮点击等行为的跟踪。同时,文章展示了如何使用aplus_queue进行基础埋点、用户信息埋点以及页面路由和用户信息的异步处理。
摘要由CSDN通过智能技术生成

浙政钉埋点

  • “埋点”可以理解为用户行为数据采集,针对特定用户行为或事件进行捕获、处理和发送的相关技术及其实施过程。例如访问某个页面次数和某一个按钮的点击次数。
  • 在做完一个浙政钉浙政钉应H5之,后要求对该应用进行埋点处理。
  • 浙政钉埋点需要做两部分,稳定性监控代码(Emas)、流量分析代码(A+)。
稳定性监控代码(Emas)
  // 在index.html 引入, 修改对呀的bid
  <script src='https://wpk-gate.zjzwfw.gov.cn/static/wpk-jssdk.1.0.2/wpkReporter.js' crossorigin='true'></script>

  <script>
    try {
      const config = {
        bid: 'xxxxxxxx', // 埋点 应用的bid
        signkey: '1234567890abcdef',
        gateway: 'https://wpk-gate.zjzwfw.gov.cn'
      };
      const wpk = new wpkReporter(config);
      wpk.installAll();
      window._wpk = wpk;
    } catch (err) {
      console.error('WpkReporter init fail', err);
    }
  </script>
流量分析代码(A+)
  // index.html 引入 js
  <script>
    // 流量分析代码(A+)
    (function(w, d, s, q, i) {
      w[q] = w[q] || [];
      var f = d.getElementsByTagName(s)[0],j = d.createElement(s);
      j.async = true;
      j.id = 'beacon-aplus';
      j.src = 'https://alidt.alicdn.com/alilog/mlog/aplus_cloud.js';
      f.parentNode.insertBefore(j, f);
    })(window, document, 'script', 'aplus_queue');

    aplus_queue.push({
      action: 'aplus.setMetaInfo',
      arguments: ['aplus-rhost-v', 'alog.zjzwfw.gov.cn']
    });
    aplus_queue.push({
      action: 'aplus.setMetaInfo',
      arguments: ['aplus-rhost-g', 'alog.zjzwfw.gov.cn']
    });
    
    var u = navigator.userAgent
    var isAndroid = u.indexOf('Android') > -1
    var isIOS = !!u.match(/\(i[^;]+;( U;)? CPU.+Mac OS X/)

    aplus_queue.push({
      action: 'aplus.setMetaInfo',
      arguments: ['appId', isAndroid ? '28302650' : isIOS ? '28328447' : '47130293']
    });
  </script>
  // baseAplus 函数需要在每一个页面去调用这个方法, route 是当前页面的路由, userInfo是当前账号的用户信息
  const baseAplus = ({ route, userInfo }) => {

    // 基础埋点
    
    // 单页应用 或 “单个页面”需异步补充PV日志参数还需进行如下埋点:
    aplus_queue.push({
      action: 'aplus.setMetaInfo',
      arguments: ['aplus-waiting', 'MAN']
    })

    // 单页应用路由切换后 或 在异步获取到pv日志所需的参数后再执行sendPV:
    aplus_queue.push({
      'action':'aplus.sendPV',
      'arguments': [
        { is_auto: false },
        {
          // 当前你的应用信息,此两行请勿修改
          sapp_id: 'xxxxx',
          sapp_name: 'xxxxxxx',

          // 自定义PV参数key-value键值对(只能是这种平铺的json,不能做多层嵌套)
          // page_id, page_url 尽量唯一, 不要重复(重复的话埋点可能会失败)
          page_id: route.name,
          page_name: route.meta.name,
          page_url: route.path 
        }
      ]
    })

    // 用户信息埋点

    // 如采集用户信息是异步行为需要先执行这个BLOCK埋点
    aplus_queue.push({
      action: 'aplus.setMetaInfo',
      arguments: ['_hold', 'BLOCK']
    })

    // 设置会员昵称
    aplus_queue.push({
      action: 'aplus.setMetaInfo',
      arguments: ['_user_nick', userInfo.lastName]
    })

    // 设置会员ID
    aplus_queue.push({
      action: 'aplus.setMetaInfo',
      arguments: ['_user_id', userInfo.accountId]
    })

    // // 设备ID是业务定义的,用于定义唯一的设备标识。这个目前没有要求,可不设置。
    // aplus_queue.push({
    //   action: "aplus.setMetaInfo",
    //   arguments: ["_dev_id", "yourDeviceId"]
    // });

    // 如采集用户信息是异步行为,需要先设置完用户信息后再执行这个START埋点
    // 此时被block住的日志会携带上用户信息逐条发出
    aplus_queue.push({
      action: 'aplus.setMetaInfo',
      arguments: ['_hold', 'START']
    })
  }
  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值