给你的系统做好埋点

简介: 给你的系统做好埋点

小陈同学在2023年做了个测试平台,在企业内部落地推广了,自我感觉还不错。在年终汇报的时候,领导希望他能够提供一些真实的使用数据。小陈只是简单地提交了一些沉淀的用例数、测试报告、执行情况等专业的业务数据。然后领导来了个灵魂拷问:这个系统哪些功能点用户用得多?明年你打算如何改进已有的功能,让更多的人使用?

 

这其实是很多做平台的测试人都会遇到的问题,如何更好地运营自己的平台,除了专业的业务数据(这些数据其实还有一定的欺骗性)。在平台改进的过程中,除了业务优化外,还需要结合用户的使用情况,针对核心的、热点的功能进行重点优化。

 

所以,需要做好埋点数据,让更真实的数据说话。

 

在自己过往的经验中,有三种办法可以快速实现,和大家分享下。 

01

最简单的,就是基于Nginx的日志配置,快速获取用户的访问路径及频率。在Nginx的access.log中,增加如下配置即可:


 

输出的结果如下:


127.0.0.1 - - [26/Mar/2021:21:42:52 +0800] "GET /code/tone/measure_backend/ HTTP/1.1" 200 0 "-" "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/89.0.4389.82 Safari/537.36" 0.001
127.0.0.1 - - [26/Mar/2021:21:42:56 +0800] "GET /project/PAAS/plan/tree/0 HTTP/1.1" 200 555 "-" "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/89.0.4389.82 Safari/537.36" 0.000

 

然后通过Shell脚本就能快速知道排名前10的路径和停留时长。还能获取到用户的浏览器信息,有助于做兼容性测试。

 

PS:这个办法其实也是早期做性能测试用户流量分析的基本套路,还能计算真实的PV。常用的变量可参考官网:http://nginx.org/en/docs/http/ngx_http_log_module.html#access_log

 

02

第二种方法,就是基于切面编程思路,在Controller业务访问的入口,增加一个AOP,用于记录用户的业务行为。

 

 

Audit的简单实现如下:


  

这样就可以记录用户行为了,还可以针对Audit做更多的扩展,灵活度更高。

03

如果企业内部有统一的埋点平台,那就更简单的,直接对接接入就好。省时省力。



PS:上图是某系统上线1个月后的访问情况,是不是很惨淡?虽然它业务沉淀的数据还不错,但是一直都是那么几个人在用,整体的浏览次数也不高。很难说是个有用的系统。

 

04

埋点数据能够比业务数据更真实地反馈系统的实际价值,因为业务数据是可以通过批量导入、设置无效数据、生成脏数据等方法制造出来。但是通过埋点数据的梳理,确认高频的URL分析,高频的用户IP分析,高频的User-agent分析,有助于产品、研发、测试更好地了解系统的真实使用情况。

 

测试人员为什么要懂这些呢?在不能直接接触更多的真实用户情况下,通过埋点数据的分析,测试人员至少有以下几点收获:


  1. 可以更好地了解用户行为,那就可以更专注地构建测试场景,把更多的精力放到核心页面功能上;


  2. 为探索性测试提供用户路径,测试更多的场景;

  3. 获得用户使用行为习惯,为后续的性能测试场景构建打下基础;

  4. 对于自己研发的平台,也能有更好的数据说明,有利于画饼;

 

小陈同学遇到的灵魂拷问问题也就有解题思路了~


共勉。

相关文章
|
SQL 监控 网络协议
线上故障如何快速排查?来看这套技巧大全
有哪些常见的线上故障?如何快速定位问题?本文详细总结工作中的经验,从服务器、Java应用、数据库、Redis、网络和业务六个层面分享线上故障排查的思路和技巧。较长,同学们可收藏后再看。
线上故障如何快速排查?来看这套技巧大全
|
3月前
|
Prometheus 监控 Cloud Native
关于告警,要想做好,从这些方面着手
监控告警最应该关注的是哪些方面?告警收敛、告警聚合、告警降噪、排班、认领、升级、协同
58 1
|
4天前
|
运维 Prometheus 监控
持续监控和反馈:优化反馈机制与改进流程
持续监控和反馈:优化反馈机制与改进流程
12 1
|
3月前
|
存储 数据采集 前端开发
ClkLog 实践中的挑战:如何设计和实施有效的埋点指标
前端数据埋点要怎么做才能获取到有用的数据并对运营产生积极的作用,对于首次实施埋点及数据分析的工程师来说确实是个难点。网上很多文章讲的都是方法论和理论知识,真正实践的内容比较少,我们从一个案例来描述一下埋点要如何做。
ClkLog 实践中的挑战:如何设计和实施有效的埋点指标
|
消息中间件 监控 关系型数据库
134 日志监控告警系统案例(功能架构分析)
134 日志监控告警系统案例(功能架构分析)
140 0
|
监控 小程序 机器人
06 埋点测试之体系形成
06 埋点测试之体系形成
|
数据采集 移动开发 数据挖掘
01 埋点测试之质量保障
01 埋点测试之质量保障
|
数据采集 JavaScript 应用服务中间件
网站流量日志埋点收集--系统部署架构图和采集流程梳理|学习笔记
快速学习网站流量日志埋点收集--系统部署架构图和采集流程梳理
286 0
网站流量日志埋点收集--系统部署架构图和采集流程梳理|学习笔记
|
运维 前端开发 应用服务中间件
网站流量日志埋点收集—系统部署环境搭建|学习笔记
快速学习网站流量日志埋点收集—系统部署环境搭建
163 0
网站流量日志埋点收集—系统部署环境搭建|学习笔记
|
分布式计算 监控 前端开发
拍卖前端质量之 基于业务驱动的前端性能监控的有效实践
前端的本质价值是什么? 我认为是 给用户创造良好的交互体验。 前端性能对用户体验、对业务跳失率的影响,在业界已有共识,不言而喻。 以下详述测试视角,前端性能优化的解法,简言之即:从发现、分析、验证3方面驱动推进页面性能优化 并通过实际案例更生动描述。
382 1