当移动数据分析自带的基础分析报表不能满足App开发者的个性化需求时,App开发者可以将数据一键同步至MaxCompute,结合自己的业务需求来进一步加工、分析自己的数据。
操作步骤
使用主账号登录MaxCompute控制台。
单击个人信息,修改AccessKey信息,填写主账号AccessKey ID与AccessKey Secret。
说明AccessKey信息可在访问控制中,或Access Key管理类目里获取。
登录移动数据分析控制台,在同步MaxCompute页签打开APP数据同步开关。
重要同步延迟:APP数据同步,支持将账号下所有 App 数据增量同步(15分钟间隔)到 MaxCompute 指定 region 的 project 中,延迟约为一小时。
时间间隔:前台30s,后台5分钟,无网络情况下存储3天最多存储9000条日志。
日志数据内容字段
当前开放以下字段:
字段名 | 类型 | 注释 |
app_id | string | 以appkey@os的形式表示 |
app_name | string | app_id对应的app中文名称 |
app_version | string | app的应用版本号 |
channel | string | 应用分发渠道 |
imei | string | 移动设备国际身份码的缩写 |
imsi | string | 国际移动用户识别码 |
brand | string | 手机或终端的品牌 |
device_model | string | 手机或终端的机型 |
resolution | string | 手机或终端的屏幕分辨率 |
os | string | 操作系统,如:Android、iPhone OS |
os_version | string | 操作系统的版本 |
carrier | string | 移动运营商,如:中国移动、中国联通、中国电信 |
access | string | 连接的网络,如:2G、3G、Wi-Fi |
access_subtype | string | 网络类型,如:HSPA、EVDO、EDGE、GPRS等 |
network_type | string | 根据access,access_subtype转化后的网络类型 |
school | string | 根据client_ip如果为校园网解析出的学校 |
client_ip | string | 客户端ip |
longitude | string | 经度,因为合规要求,新版本已经无法采集 |
latitude | string | 纬度,因为合规要求,新版本已经无法采集 |
country | string | 根据client_ip解析出的国家或地区 |
province | string | 根据client_ip解析出的省、直辖市、自治区 |
city | string | 根据client_ip解析出的地级市 |
district | string | 根据client_ip解析出的所在区域,对应如华南,西北等 |
session_id | string | 用户的一次会话id |
reach_time | string | 到达日志服务器的时间,此时间可作为日志时间直接使用,格式为:yyyyMMddHHmmss |
event_id | string | 埋点的事件ID,事件ID为2001,page是表示当前页面,arg1表示上一个页面;事件ID为19999,page是默认page_extend,可埋点重写,arg1表示自定义事件名称 |
page | string | 页面,如果有设置过页面名称,为设置的页面名称;如果未设置页面名称时,安卓默认取Activity的名称,Ios默认取ViewController的名称 |
arg1 | string | 事件参数,事件ID为1010时为上次启动的前台停留时间,单位毫秒 |
arg2 | string | 事件参数,事件ID为1010时为此次启动之前的后台停留时间,单位毫秒 |
arg3 | string | 事件参数 |
args | string | 事件参数,调接口setProperty()等埋点的KV属性串 |
local_time | string | 终端时间(格式为yyyy-mm-dd hh24:mi:ss) |
local_timestamp | string | 终端时间(格式为数字型的unix 时间,精确到毫秒,可通过from_unixtime函数转换成日期) |
utdid | string | 服务端生成的设备唯一标识符 |
user_nick | string | 长登录会员名称,长登录是指只要登录一次就会记住该设备最近一次登录会员,即使该设备下一次打开App且没有登录,其日志也会记录该设备最近一次登录会员 |
user_id | string | 长登录会员id |
short_user_nick | string | 短登录会员名称,短登录是指当前处于登录状态的会员 |
short_user_id | string | 短登录会员id |
ds | string | 分区字段,表示日期,一般格式为yyyymmdd |
hh | string | 分区字段,表示小时,一般格式为hh |
mm | string | 分区字段,表示分钟,一般格式为mm,15分钟一个间隔,如00 15 30 45 |
事件ID(即event_id)类型如下:
事件ID | 含义 | 是否自动采集 |
2001 | 页面事件 | 自动采集 |
19999 | 自定义事件 | 调接口 setEventLabel() 埋点 |
1010 | 退出事件 | 自动采集,一般用于计算启动次数 |
1006 | 注册事件 | 调接口 userRegister() 埋点 |
1007 | 登录事件 | 调用接口 updateUserAccount() 埋点 |
3002 | 性能事件 | 网络请求 |
3003 | 性能事件 | 带宽利用率 |
3004 | 性能事件 | 错误详情 |
3005 | 性能事件 | CAS加速效果 |
3015 | 性能事件 | 域名劫持事件 |
66602 | 性能事件 | 自定义性能事件 |
1 | 性能事件 | android手机java crash |
61006 | 性能事件 | android手机native crash,iOS crash |
事件规则如下:
事件ID | page | arg1 | arg2 | arg3 | args | 上报时机 |
1010 | 在运行过程中切换页面则取当前页面,程序退出取Page_UT | 本次前台运行时间,单位毫秒 | 这次启动前的后台停留时间,单位毫秒 | 无 | 无 | 停留在后台时或下次启动 |
2001 | 现页面ID | 上一跳页面ID | 上一个控件名 | 页面停留时间,单位毫秒,不算后台停留时间 | 页面参数KV对, | 上报时机为页面离开后 |
19999 | 现页面ID | event_id | 无 | 使用时长 | 自定义事件参数KV对, | 点击后上报 |
日志中的三类时间:
local_time: 设备的时间,因为上报延迟,可能与另外两个时间相差较大。
reach_time:服务器时间,日志到达服务器的时间。
partition_time(ds,hh,mm): 分区时间,采集服务器数据到达 MaxCompute 源表的时间。