事件管理

事件及字段

事件是自定义分析进行用户行为数据收集和分析的模型。

一个事件的数据都是由多个字段组成,字段包括系统默认字段和用户自定义字段。

系统默认字段由系统收集数据,如省份,城市,国家等;而用户自定义字段则是用户指定并收集数据。

字段的定义是全局的,即事件A使用了字段a,事件B也使用了字段a,a在事件A和B中的定义及描述是一致的。

目前,字段类型支持32位整数型及字符型。

字段信息

事件的编辑与发布

可以通过新增事件创建一个事件,修改事件来编辑一个事件,事件只有发布之后,才在收集和分析数据时正式生效。

事件列表

新增事件”可以增加新的事件。“查看发布版”可以看到这个事件目前正式发布的版本。“修改”可以编辑这个事件。

新增/修改事件

点击“修改”编辑已有事件,进入修改事件页面。或者点击“新建事件”创建事件。事件名称新增事件时,需要填写事件的英文名称和中文名称。英文名称可由小写字母、下划线、数字组成,并以小写字母开头,长度为32字以内,并且不能跟已有的事件的英文名称相同,保存后不可修改;中文名称在32字符以内,不能跟已有的事件的中文名称相同,保存后不可修改。

image.png

编辑事件,首先需要编辑这个事件的配置,即如何收集数据,配置的具体细节见事件上报配置说明

如图,表示在view_product事件中,将使用product_name, product_price, product_category这些字段,收集页面上的信息,如果这些字段之前没有被view_product事件使用过,那么将添加到事件里。字段检查编辑事件配置后,点击“检查字段”,会检查上报的配置里指定了哪些字段,是否需要添加到事件里。image

如图,这个例子中的几个字段对于事件来说还未发布使用过,都是新增字段。并且,这些字段在其他事件中均未使用过,均处于可编辑状态。如果某些字段 在其他事件里定义过了,其类型和含义都是确定的(如前面所说,字段的定义是全局的),则中文名称和类型信息不可编辑,字段备注可编辑。

补充字段定义后,可以点击“保存”,保存本次新增或修改内容。“保存并测试”,将保存当前配置并进入测试流程,可以检查数据上报是否符合预期,参见【保存并测试】。“保存并发布”,将保存当前配置并发布,可以正式收集和分析用户行为数据。

重置发布版

image修改事件配置时,如果不符合实际需求,可以点击“重置为线上版本”撤销修改。

注意,该操作不会自动保存,“重置为线上版本”后需要再点击“保存”。

事件上报配置说明

每个事件都需要指定收集数据的方式,这个是通过事件上报配置来管理的。

事件上报配置的每一项都是一个动作,可以由一到多个动作组成。

image.png

动作的各项含义如下:

trigger,触发条件:

click 点击时触发,必须指定page和elemententerPage 进入页面时触发,包括新开、后退、切换到前台都属于进入页面,必须指定pageleavePage 离开页面时触发,包括离开、切换到后台都属于离开页面,必须指定pagepageLoad 新开页面时触发,即第一次进入页面,必须指定pagepageUnload 回收页面时触发,必须指定pageswitchTab 调用switchTab接口切换页面时触发,必须指定pagepullDownRefresh 下拉刷新时触发,必须指定pagelaunch 加载小程序时触发background 切换到后台触发foreground 切换到前台触发share 右上角菜单分享时触发api 自定义分析数据的上报,调用my.reportAnalytics时触发

action

trigger发生时的动作,默认会收集数据,包括系统默认数据和用户自定义数据(data中定义)。收集数据后可以立即上报,也可以分多步收集,再上报。有如下定义:

  • collect:收集数据
  • report:收集数据并上报当前收集的所有数据
    比如:

  • collect(收集数据)->collect(收集数据)->report(收集数据并上报)

  • report(收集数据并立即上报)->collect(收集数据)->report(收集数据并上报)
    注意:
事件的最后一个动作的action必须为report

page

触发的页面, 如pages/index/index, pages/list/list,此规则与小程序app.json的pages字段保持一致, 如果需要任意页面触发,则填写ANY_PAGE。

element

触发的元素,支持一层级的css的id和class选择器,即必须以’.’或者’#’开头

data

收集的自定义数据,为1到多项, 每一项都是以 “字段名 字段值”的方式;必须填写至少一项

字段名:事件里的字段名字段值:事件里这个字段的数据值,可收集小程序中的变量,规则如下:- 填写的变量名,默认从page实例的data字段中获取- 若想收集由list变量渲染的列表中的某一项数据,则可用list[].表示,这里会根据当前填写的element(只能是class)得到的NodeList的第几个来决定数组下标。- 若想取得axml中data-系列属性的值,则可用$DATASET.表示- 若想取得app实例的数据,则可用$APP.表示,只支持获取基本类型的数据,如number、string、boolean。

除此之外,还可以填写一些提供的系统属性,以“$”开头,目前支持以下属性:

- $PAGE_TIME 用户从进入本页面到当前的时间(触发action的时间点)- $APP_TIME 用户进入小程序到当前的时间(触发action的时间点)- $CURRENT_PAGE 当前用户所在的页面- $LAST_PAGE 上一页

多动作收集的例子:如果数据需要跨多个页面收集,那么就需要多个动作来完成上报了,比如下面的例子,在viewList页面收集product_name, product_category的数据,然后进入viewProduct页面时收集到product_price的数据,并上报。imageimage

检查字段

包含新增已定义、新增未定义、停用、启用 4个状态。image

  • 新增已定义。本次添加的字段在小程序的其他事件中已定义,在当前事件中未定义;
  • 新增未定义。本次添加的字段在小程序的所有事件中都未定义;
  • 停用。删除当前事件的字段;
  • 启用。添加已停用的字段;

保存

字段检查后,完善字段信息,点击保存按钮,提交保存本次事件配置。

保存并测试

点击保存并测试,先保存事件,再开始测试流程。先选择人员,点击下一步。此时会同步把事件配置下发给该用户的小程序。image点击"同步结果"同步数据。image等待数据上报,数据一旦上报,会在表格展示。image

点击关闭结束测试。

保存并发布

点击保存并发布,先保存事件配置,再发布配置。终端用户打开小程序时会拉取到最新发布的配置。