2017云栖大会·杭州峰会:《在线用户行为分析:基于流式计算的数据处理及应用》之《流数据采集:海量流式视频日志收集》篇

实验背景介绍

了解更多2017云栖大会·杭州峰会 TechInsight & Workshop.

本手册为云栖大会Workshop之《在线用户行为分析:基于流式计算的数据处理及应用》场的《流数据采集:海量流式视频日志收集》篇所需。主要帮助现场学员熟悉并掌握阿里云日志服务Log的操作和使用。

实验涉及大数据产品

前提准备

必备条件:

  • 确保已经从云中沙箱中获取了实验所需的阿里云账号和密码。
  • 购买开通日志服务产品。

开通日志服务Log

2017云栖大会·杭州峰会:《在线用户行为分析:基于流式计算的数据处理及应用》之《流数据采集:海量流式视频日志收集》篇

2017云栖大会·杭州峰会:《在线用户行为分析:基于流式计算的数据处理及应用》之《流数据采集:海量流式视频日志收集》篇

您获得账号需要按照引导进行自助开通日志服务。开通后即可体验如下课程。

  • step2:进入阿里云日志服务管理控制台。

2017云栖大会·杭州峰会:《在线用户行为分析:基于流式计算的数据处理及应用》之《流数据采集:海量流式视频日志收集》篇

创建日志服务Project

阿里云日志服务project名称是全局唯一的,建议大家本次实验按照workshop-abc的规则来命名,abc为您获取的云账号后三位数字。如获取云账号为train00620@aliyun-inc.com,那么project名称命名为workshop-620。

  • step1:点击右上角创建Project进入创建Project页面。
    2017云栖大会·杭州峰会:《在线用户行为分析:基于流式计算的数据处理及应用》之《流数据采集:海量流式视频日志收集》篇
  • step2:在弹出框中填写需要配置的Project参数。
    2017云栖大会·杭州峰会:《在线用户行为分析:基于流式计算的数据处理及应用》之《流数据采集:海量流式视频日志收集》篇
  • Project名称:按照workshop-abc的规则来命名,如workshop-620,620为您获取到云账号后三位数字。
  • 所属区域:华东2,即上海。
  • step3:点击确认之后,弹出如下对话框,并点击创建按钮,进入创建LogStore页面。
    2017云栖大会·杭州峰会:《在线用户行为分析:基于流式计算的数据处理及应用》之《流数据采集:海量流式视频日志收集》篇

创建日志服务Logstore

本案例场景需要您一共创建三个Logstore,分别说明如下:

  • vedio-server-log:用于收集服务端流媒体的编码解码等日志。
  • client-operation-log:用于收集用户在浏览器、客户端的操作日志。
  • web-tracking-log:用于演示WebTracking采集播放器操作日志。

开始分别创建以上三个Logstore:

创建Logstore:vedio-server-log

  • step1:在创建Logstore弹出框中配置如下信息。
    2017云栖大会·杭州峰会:《在线用户行为分析:基于流式计算的数据处理及应用》之《流数据采集:海量流式视频日志收集》篇

Logstore名称:vedio-server-log,其他均采用默认。

  • step2:创建成功之后提示创建Logtail配置,点击创建Logtail.

2017云栖大会·杭州峰会:《在线用户行为分析:基于流式计算的数据处理及应用》之《流数据采集:海量流式视频日志收集》篇

  • step3:进入创建Logtail页面。
  • step3.1:选择数据源配置中,选择文本文件并点击下一步。
    2017云栖大会·杭州峰会:《在线用户行为分析:基于流式计算的数据处理及应用》之《流数据采集:海量流式视频日志收集》篇
  • step3.2:指定采集模式配置中,配置采集模式如下:
    2017云栖大会·杭州峰会:《在线用户行为分析:基于流式计算的数据处理及应用》之《流数据采集:海量流式视频日志收集》篇

配置项说明如下:

  • 配置名称:vedio-server-log
  • 日志路径:/root,具体日志文件名为:vedio-server.log
  • 模式:选择JSON模式。
  • step3.3:配置完采集模式后,点击下一步进入应用到机器组配置页面,点击+创建机器组
    2017云栖大会·杭州峰会:《在线用户行为分析:基于流式计算的数据处理及应用》之《流数据采集:海量流式视频日志收集》篇

创建机器组弹出框:

2017云栖大会·杭州峰会:《在线用户行为分析:基于流式计算的数据处理及应用》之《流数据采集:海量流式视频日志收集》篇

获取ECS内网IP

  • step4:登陆ECS控制台,获取自己账号下的ECS虚拟机的内网IP:

2017云栖大会·杭州峰会:《在线用户行为分析:基于流式计算的数据处理及应用》之《流数据采集:海量流式视频日志收集》篇

注意:ECS区域也是在华东2,上图为示例图.

  • step5:将获取到的内网IP填到IP地址框中,并填写其他机器组名称,具体如下:
    2017云栖大会·杭州峰会:《在线用户行为分析:基于流式计算的数据处理及应用》之《流数据采集:海量流式视频日志收集》篇

配置项说明如下:

  • 机器组名称:myvm
  • 机器组标识:选择IP地址
  • IP地址:从ECS管控台获取到的内网IP地址。
  • step6:将配置应用到机器组:
    2017云栖大会·杭州峰会:《在线用户行为分析:基于流式计算的数据处理及应用》之《流数据采集:海量流式视频日志收集》篇

上述步骤做完之后便完成了vedio-server-log日志的采集配置。

创建Logstore:client-operation-log

大体操作步骤同上,创建Logstore:vedio-server-log,差异点在指定采集模式上。

  • step1:首先点击左侧菜单中的日志库,继而点击右上角创建,进入创建Logstore页面。

2017云栖大会·杭州峰会:《在线用户行为分析:基于流式计算的数据处理及应用》之《流数据采集:海量流式视频日志收集》篇

  • step2:在创建Logstore页面中配置信息如下。
    2017云栖大会·杭州峰会:《在线用户行为分析:基于流式计算的数据处理及应用》之《流数据采集:海量流式视频日志收集》篇

Logstore名称:client-operation-log,其他选项均为默认。

  • step3:继而在弹出中选择创建Logtail配置

2017云栖大会·杭州峰会:《在线用户行为分析:基于流式计算的数据处理及应用》之《流数据采集:海量流式视频日志收集》篇

  • step4:选择数据源依然选择配置为文本文件,在指定采集模式配置中,如下:

2017云栖大会·杭州峰会:《在线用户行为分析:基于流式计算的数据处理及应用》之《流数据采集:海量流式视频日志收集》篇

配置项说明如下:

  • 配置名称:client-operation-log
  • 日志路径:/root,具体日志文件名为:client-operation.log
  • 模式:选择JSON模式。
  • step5:将采集配置应用到之前创建好的机器组myvm:
    2017云栖大会·杭州峰会:《在线用户行为分析:基于流式计算的数据处理及应用》之《流数据采集:海量流式视频日志收集》篇

创建Logstore:web-tracking-log

  • step1:首先点击左侧菜单中的日志库,继而点击右上角创建,进入创建Logstore页面。

2017云栖大会·杭州峰会:《在线用户行为分析:基于流式计算的数据处理及应用》之《流数据采集:海量流式视频日志收集》篇

  • step2:在创建Logstore页面中配置信息如下。
    2017云栖大会·杭州峰会:《在线用户行为分析:基于流式计算的数据处理及应用》之《流数据采集:海量流式视频日志收集》篇

配置项说明:

  • Logstore名称:web-tracking-log
  • 选择开启webTracking功能。
  • step3:点击确定按钮后,弹出创建Logtail框,直接点击取消即可。
    2017云栖大会·杭州峰会:《在线用户行为分析:基于流式计算的数据处理及应用》之《流数据采集:海量流式视频日志收集》篇

注意创建该Logstore时,需要打开WebTracking,另外,这个Logstore不需要创建采集配置,到这里web-tracking-log就创建好了。

所有已经配置的Logstore就已经完成,如下图所示:

2017云栖大会·杭州峰会:《在线用户行为分析:基于流式计算的数据处理及应用》之《流数据采集:海量流式视频日志收集》篇

启动ECS VM进行mock视频流数据

为了更真实的模拟直播视频的日志产生、采集再到处理的整个链路,我们为每个学员都提供了一台专属ECS,便于体验全链路workshop流程。

  • step1:登陆ECS控制台,找到在Logtail配置过程中的机器组实例,点击远程连接,登陆到ECS VM上。

2017云栖大会·杭州峰会:《在线用户行为分析:基于流式计算的数据处理及应用》之《流数据采集:海量流式视频日志收集》篇

  • step2:初次使用会弹框显示6位数的远程连接密码,切记一定要复制下来

2017云栖大会·杭州峰会:《在线用户行为分析:基于流式计算的数据处理及应用》之《流数据采集:海量流式视频日志收集》篇

  • step3:输入远程连接密码,如果忘记密码,点击右上角修改,然后重新登陆。
    2017云栖大会·杭州峰会:《在线用户行为分析:基于流式计算的数据处理及应用》之《流数据采集:海量流式视频日志收集》篇
  • step4:从云中沙箱获取登录账号和密码,并登陆成功之后,进入到ECS VM的命令窗口:

2017云栖大会·杭州峰会:《在线用户行为分析:基于流式计算的数据处理及应用》之《流数据采集:海量流式视频日志收集》篇

2017云栖大会·杭州峰会:《在线用户行为分析:基于流式计算的数据处理及应用》之《流数据采集:海量流式视频日志收集》篇

  • step5:点击右上角复制命令输入,复制如下命令并修改自己的project名称:
sh start.sh workshop-hz [your log project name]

2017云栖大会·杭州峰会:《在线用户行为分析:基于流式计算的数据处理及应用》之《流数据采集:海量流式视频日志收集》篇

其中第二个参数(your log project name)填写之前创建好的日志服务的Project名称。

举个例子,如果之前创建的日志服务的Project名称是workshop-620,执行的命令如下:

sh start.sh workshop-hz workshop-620

执行成功后,在该台ECS上,一个播放网站以及模拟产生播放日志的程序就启动好了。这里请务必保证输入的日志服务的Project名称正确无误。

  • step5:在当前目录下执行ls -la命令,确认环境是否被正确搭建。

2017云栖大会·杭州峰会:《在线用户行为分析:基于流式计算的数据处理及应用》之《流数据采集:海量流式视频日志收集》篇

在当前目录(/root/),执行ls -la命令,如果看到上图红框中两个日志文件已经产生,那就表示环境已经搭建好了,如果没有搭建好,请在WorkShop现场举手示意。

验证日志采集

经过创建Logstore、配置Logtail以及启动ECS上相关程序后,整个视频日志流采集的流程就全部完成了。接下来就是验证日志数据是否成功收集到日志服务中了。

2017云栖大会·杭州峰会:《在线用户行为分析:基于流式计算的数据处理及应用》之《流数据采集:海量流式视频日志收集》篇

  • step2:点击预览按钮,查看采集上来的日志。

2017云栖大会·杭州峰会:《在线用户行为分析:基于流式计算的数据处理及应用》之《流数据采集:海量流式视频日志收集》篇

通过上述步骤可以验证,vedio-server-log和client-operation-log日志库中是否已经有采集到日志进来。

  • step3:验证web-tracking-log播放器操作日志。回到ECS控制台,找到ECS实例的公网IP,比如我的ECS的公网IP是:101.132.26.92
    2017云栖大会·杭州峰会:《在线用户行为分析:基于流式计算的数据处理及应用》之《流数据采集:海量流式视频日志收集》篇
  • step4:浏览器中访问该公网网址:http://101.132.26.92,打开播放页面如下。
    2017云栖大会·杭州峰会:《在线用户行为分析:基于流式计算的数据处理及应用》之《流数据采集:海量流式视频日志收集》篇

可以反复多次点击播放、暂定按钮。

  • step5:点击预览进入日志预览页面。
    2017云栖大会·杭州峰会:《在线用户行为分析:基于流式计算的数据处理及应用》之《流数据采集:海量流式视频日志收集》篇

2017云栖大会·杭州峰会:《在线用户行为分析:基于流式计算的数据处理及应用》之《流数据采集:海量流式视频日志收集》篇

上图可以看到刚才在播放器的操作行为都被记录到web-tracking-log这个Logstore里面了。至此,一个完整的日志采集流程便完成了。

上一篇:趣头条基于 Flink 的实时平台建设实践


下一篇:面向任务型对话的异构记忆网络 | EMNLP 2019 论文解读