在产品运营的工作过程中,需要每日关注产品的核心指标变化情况,监控其整体运营状况。华为分析服务提供查看吸引新用户卡片,该卡片展示了新增用户数、人均会话次数、人均访问时长、人均页面访问数。借助该页面运营可观察拉新效果,判断产品对新用户的吸引力。

问题描述

某开发者在集成华为分析服务后,发现AGC概览页面上的人均会话时长突增至原来的两倍,但是人均会话次数并没有改变,具体见下图:

该突变现象不符合正常逻辑,需要深度定位突变原因。

定位过程

(1)排除云测数据同步过程异常问题

首先需要排查HUAWEI Analytics云测各计算节点有无异常。通过排查各个云测节点未发现异常,从端测采集上来的用户数和事件数都没有在云测各节点发生改变。

(2)客户侧在数据突增当天是否有重大变更情况

经过确认,该开发者在问题发生前一天发布了新版本。但客户新版本发布并没有重大内容变更,人均会话时长突增至2倍以上依然难以解释;

(3)分析变化较大的用户事件和用户属性

通过分析现网用户事件和用户属性,发现现网中有部分用户setAnalyticsEnabled开关原来为false的被置位true,即现网中原来有一批不参与分析的用户在App升级后参与了分析,开发者没有在App新版本中继承原来的开关状态。最终导致新增一批参与分析的用户,且这部分用户会话时长较长,最终导致人均会话时长增加。

再近一步分析这群新增用户,我们发现主要为iOS用户。iOS当时还未提供切后台关闭会话的机制,所以iOS用户在切后台后并不会像Android一样30秒后关闭会话,而是直到系统或者用户将App完全关闭后才关闭会话,所以iOS系统用户会话时间更长,最终导致整体的平均会话时长突增。

原因总结

开发者App新版本上线后,现网中有部分用户原来setAnalyticsEnabled开关为false的被置为true,新增一批参与分析的用户。即现网中有一批原来不参与分析的用户在App升级后参与了分析,开发者没有在App新版本中继承原来的开关状态。最终导致新增一批参与分析的用户,且这部分用户绝大多数为iOS用户,iOS当时还未提供后台运行关闭会话的接口,导致整体人均会话时长突增。

解决方案

1.App新版本更新是继承前一个版本的setAnalyticsEnabled开关状态;

2.HUAWEI Analytics后续针对iOS版本的SDK提供session关闭接口,开发者届时可自定义session关闭策略,可解决会话时长突增的问题。

了解更多详情>>

访问华为开发者联盟官网

获取开发指导文档

华为移动服务开源仓库地址:GitHubGitee

关注我们,第一时间了解 HMS Core 最新技术资讯~

【FAQ】用户访问次数不变,访问时长却突增2倍,分析服务发生数据异常该如何解决?的更多相关文章

  1. 以springMVC为例获取上传视频文件时长

    毕设项目是一个在线学习系统,教师用户有上传视频的功能,在答辩之前赶了一个demo出来,好多功能都写死了,比如课程学习进度就是被我写死在前端的一个变量,最近导师要我把项目打包发给他,这才心慌慌赶紧把这些 ...

  2. VS2010 F5调试时出现:“ 尝试运行项目时出错:未捕获通过反射调用的方法引发的异常”解决

    VS2010 F5调试时出现 尝试运行项目时出错:未捕获通过反射调用的方法引发的异常 两个解决方法:1) 打开项目属性,选择调试选项卡,将“启用非托管代码调试”一项钩上.2) 打开项目属性,选择调试选 ...

  3. Django Rest Framework之用户频率/访问次数限制

    内置接口代码基本结构 settings.py: REST_FRAMEWORK = { 'DEFAULT_THROTTLE_CLASSES':['api.utils.mythrottle.UserThr ...

  4. 利用 awk 统计nginx 中某一个用户的访问次数

    线上总是会遇到攻击,所以就需要分析 access.log 看看那些用户的访问次数不正常,针对这些不正常的用户,要做处理,以 access.log为例说明下怎么统计. 通过 access.log 日志来 ...

  5. PHP实现redis限制单ip、单用户的访问次数功能

    本文实例讲述了PHP实现redis限制单ip.单用户的访问次数功能.分享给大家供大家参考,具体如下: 有时候我们需要限制一个api或页面访问的频率,例如单ip或单用户一分钟之内只能访问多少次 类似于这 ...

  6. Oracle+struts2实现用户登入并显示访问次数

    实体类: package entity; public class userfo { private int id;//id private String name;//用户名 private Str ...

  7. Java web--Filter过滤器分IP统计访问次数

    分IP统计访问次数即网站统计每个IP地址访问本网站的次数. 分析 因为一个网站可能有多个页面,无论哪个页面被访问,都要统计访问次数,所以使用过滤器最为方便. 因为需要分IP统计,所以可以在过滤器中创建 ...

  8. 学习笔记_过滤器应用_1(分ip统计网站的访问次数)

    分ip统计网站的访问次数 ip count 192.168.1.111 2 192.168.1.112 59 统计工作需要在所有资源之前都执行,那么就可以放到Filter中了. 我们这个过滤器不打算做 ...

  9. Java web 实现 之 Filter分析ip统计网站的访问次数

    统计工作需要在所有资源之前都执行,那么就可以放到Filter中了. 我们这个过滤器不打算做拦截操作!因为我们只是用来做统计的. 用什么东西来装载统计的数据.Map<String,Integer& ...

  10. 使用redis限制ip访问次数

    策略1: 在redis中保存一个count值(int),key为user:$ip,value为该ip访问的次数,第一次设置key的时候,设置expires. count加1之前,判断是否key是否存在 ...

随机推荐

  1. core-js/modules/es7.arrat......................报错

    拉入代码之后出现如图提示,导致原因是因为core-js版本太高,可以用cnpm install core-js@2成功解决,安装一个项目前最后将node-moudel删除,重新安装

  2. Html飞机大战(十二): canvas写字(结束状态的编辑)

    好家伙,基本的功能都做完了,来补充一个结束状态的游戏结束文案   上代码: case END: //给我的画笔设置一个字的样式 //后面写出来的字都是这个样式的 context.font = &quo ...

  3. 【Azure 应用服务】记一次 App Service 部分请求一直返回 401 "No Authority" 的情况

    问题描述 发现部署在App Service上的 WCF 应用对于所请求的接口出现部分返回 401 - No Authority 消息,10次中有一次这样的概率.比较疑惑的问题是,应用没有更新,所以怀疑 ...

  4. nginx 代理 sftp转发流量

    首先需要nginx安装有 stream模块,使用 nginx -V 查看下是否有 --with-stream,没有使用命令: yum -y install nginx-all-modules.noar ...

  5. GB 2312字符集:中文编码的基石

    一.GB 2312字符集的背景 GB 2312字符集是中国国家标准委员会于1980年发布的一种中文字符集,是中国大陆最早的中文字符集之一.GB 2312字符集的发布填补了中国大陆中文编码的空白,为中文 ...

  6. 2FA双因素认证 - 原理和应用

    主页 个人微信公众号:密码应用技术实战 个人博客园首页:https://www.cnblogs.com/informatics/ 引言 我们在登陆网站.或者通过VPN访问公司内网时,除了输入用户口令外 ...

  7. live [lɪv , laɪv] 动词读lɪv 形容词读laɪv

    live [lɪv , laɪv] 动词读lɪv 形容词读laɪv live 英 [lɪv , laɪv] 美 [lɪv , laɪv] v. 居住;住;生存;(尤指在某时期)活着;(以某种方式)生活 ...

  8. vscode sftp 代码同步到服务器

    然后执行 ctrl+shift+p ,搜索 SFTP:Config 回车后,会生成一个".vscode/sftp.json",这个就是配置文件 参考:VsCode SFTP插件详细 ...

  9. STM32芯片SPI接口接收数据左移一位问题定位总结

    一 问题 最近在一个项目中,调试SPI的过程中遇到一个问题--接收数据整体向左移了一位(1bit).SPI数据收发是数据交换,因此接收数据时从第二个字节开始才是有效数据,也就是数据整体向右移一个字节( ...

  10. union all 优化案例

    遇到个子查询嵌套 UNION ALL 的SQL语句很慢,谓词过滤条件不能内推进去,需要优化这段 UNION ALL这块的内容. UNION ALL 慢SQL: SELECT * FROM ((SELE ...