摘要: 当我们有一个新内容时 (例如新功能新活动新游戏新文章), 作为运营人员总是迫不及待地希望能尽快传达到用户, 因为这是获取用户的第一步也是最重要的一步 以游戏发行作为例子:
我们发送重要邮件时为了确认对方已读, 都会在邮件中设置一个读取回执 " 标签以确定对方时候读信
这种模式用途很广, 例如:
发送传单时, 确保对方已读
推广网页时, 多少用户做了点击
移动 App 运营活动页面, 分析用户访问情况
对这类个性化的采集与统计, 针对站长 CNZZ 百度统计, 移动的 Talking Data 友盟等都无法胜任主要难点在于:
个性化需求难满足: 用户产生行为并非移动端场景, 其中会包括一些运营个性化需求字段, 例如: 来源渠道环境行为等参数
开发难度大 / 成本高: 为完成一次数据采集分析需求, 首先需要购买云主机, 公网 IP, 开发数据接收服务器, 消息中间件等, 并且通过互备保障服务高可用; 接下来需要开发服务端并进行测试
使用不容易: 数据达到服务端后, 还需要工程师先清洗结果并导入数据库, 生成运营需要的数据
无法弹性: 无法预估用户的使用量, 因此需要预留很大的资源池
从以上几点看, 当一个面向内容投放的运营需求来了后, 如何能以很快捷的手段满足这类用户行为采集分析需求是一个很大的挑战
日志服务 提供 web Tracking/JS/Tracking Pixel SDK 就是为解决以上轻量级埋点采集场景而生, 我们可以在 1 分钟时间内完成埋点和数据上报工作此外日志服务每账号 * 每月提供 500MB 免费额度, 让你不花钱也能办事
方案简介
这里引入采集 + 分析方案基于阿里云日志服务, 该服务是针对日志类数据的一站式服务, 无需开发就能快捷完成海量日志数据的采集消费投递以及查询分析等功能, 提升运维运营效率服务功能包括:
LogHub: 实时采集与消费与 BlinkFlinkSpark StreamingStormKepler 打通
数据投递: LogShipper 与 MaxComputeE-MapReduceOSSFunctionCompute 打通
查询与实时分析: LogSearch/Analytics 与 DataV,Grafana,Zipkin,Tableua 等打通
采集端介绍
日志服务提供 30 + 数据采集方式, 针对服务器移动端嵌入式设备及各种开发语言都提供完整的解决方案, 比较典型有:
Logtail: 针对 X86 服务器设计 Agent
Android/iOS: 针对移动端 SDK
Producer Library: 面向受限 CPU / 内存 智能设备
这里介绍的轻量级采集方案 (Web Tracking), 该方案只需一个 http get 请求即可将数据传输至日志服务 Logstore 端, 适应各种无需任何验证的静态网页, 广告投放, 宣传资料, 移动端数据采集相比其他日志采集方案, 特点如下:
WebTracking 接入步骤
Web Tracking(也叫 Tracking Pixel) 术语来自于 html 语法中的图片标签: 我们可以在页面上嵌入一个 0 Pixel 图片, 该图片默认对用户不可见, 当访问该页面显示加载图片时, 会顺带发起一个 Get 请求到服务端, 这个时候就会把参数传给服务端
Web Tracking 使用步骤如下:
1. 为 Logstore 打开 Web Tracking 标签 (Logstore 默认不允许匿名写, 在使用前需要先开通 Logstore 的 Web Tracking 开关)
2. 通过埋点方式向 Logstore 写入数据, 有三种选择:
1. 直接通过 HTTP Get 方式上报数据
curl--request GET'http://${project}.${sls-host}/logstores/${logstore}/track?APIVersion=0.6.0&key1=val1&key2=val2'
2. 通过嵌入 HTML 下 Image 标签, 当页面方式时自动上报数据
ortrack_ua.gif 除了将自定义的参数上传外, 在服务端还会将 http 头中的 UserAgentreferer 也作为日志中
3. 通过 Java Script SDK 上报数据
案例: 内容多渠道推广
当我们有一个新内容时 (例如新功能新活动新游戏新文章), 作为运营人员总是迫不及待地希望能尽快传达到用户, 因为这是获取用户的第一步也是最重要的一步
以游戏发行作为例子:
市场很大一笔费用进行游戏推广, 例如投放了 1W 次广告
广告成功加载的有 2000 人次, 约占 20%
其中点击的有 800 人次
最终下载并注册账号试玩的往往少之又少
从以上可见, 能够准确实时地获得内容推广有效性对于业务非常重要为了打到整体推广目标, 运营人员往往会会挑选各个渠道来进行推广, 例如:
用户站内信 (Mail), 官网博客 (Blog), 首页文案 (Banner 等)
短信, 用户 Email, 传单等
新浪微博, 钉钉用户群, 微信公众账号, 知乎论坛, 今日头条等新媒体
方案设计
我们日志服务中创建一个 Logstore(例如叫: myclick), 并开启 WebTracking 功能
为需要宣传的文档 (article=1001) 面对每个宣传渠道增加一个标示, 并生成 Web Tracking 标签 (以 Img 标签为例), 如下:
站内信渠道 (mailDec):
官网渠道 (aliyunDoc):
用户邮箱渠道 (email):
将 img 标签放置在宣传内容中, 就可以散布出去了, 我们也可以去散步喝咖啡了
采集日志分析
在完成埋点采集后, 我们使用日志服务 LogSearch/Analytics 功能可以对海量日志数据进行实时查询与分析在结果分析可视化上, 除自带 Dashboard 外, 还支持 DataVGrafanaTableua 等对接方式, 我们这里做一些基本的演示:
以下是截止目前采集日志数据, 我们可以在搜索框中输入关键词进行查询:
也可以在查询后输入 SQL 进行秒级的实时分析并可视化:
除了在日志服务中分析外,
以下是我们对用户点击 / 阅读日志的实时分析:
当前投放总流量与阅读数
每个小时阅读量的曲线
每种渠道阅读量的比例
阅读量来自哪些设备
阅读量来自哪些省市
更多字段和分析场景可以参见分析语法与最佳实践
最终可以将这些实时数据配置到一个实时刷新 Dashboard 中, 效果如下:
来源: http://www.jianshu.com/p/0bb5e5e65440