回执日志

更新时间:
复制为 MD 格式

本文介绍如何查看推送回执日志及利用回执日志进行分析。

使用流程

image

配置回执事件采集

  1. 开通日志服务

    登录日志服务控制台,并开通日志服务。

    说明

    回执日志功能通过流日志投递到日志服务,涉及流日志生成费和日志服务的服务费,详情请参见流日志计费说明按使用功能计费模式计费项

  2. 登录EMAS管理控制台,选择移动推送产品进入。

  3. 移动推送产品页面,从左侧导航栏选择数据统计 > 回执日志,打开回执日志页面。

  4. 单击配置日志审计服务,进入日志审计服务的全局配置页面。

  5. 全局配置页面中,配置如下信息:

    1. 中心项目Project所在区域中,选择日志中心化存储的目标地域。

    2. 配置采集同步授权。

      推荐勾选通过账号密钥辅助授权,输入AccessKey信息(AccessKey信息不会被保存,仅临时使用),单击授权

      授权成功后,将显示当前账号已授权日志服务采集同步日志

    3. 在云产品列表中,将移动推送行对应的推送回执事件开关打开,并配置存储时间。

      00

    4. 单击保存

      配置生效需要等待1分钟,完成后返回 回执日志 页面,并刷新。更多日志审计服务配置请参考日志审计服务概述

查询回执日志

  1. 返回 回执日志 主页面。

  2. 单击查询,进入日志查询页面。

  3. 选择时间范围,系统自动筛选符合时间范围的回执日志。image

  4. 在搜索框中输入查询分析语句,单击查询/分析,查看分析结果,示例查询请参考本文 “日志查询语句示例”部分。

  5. 回执日志字段说明如下:

    字段

    说明

    __time__

    事件时间,示例:2018-02-27 11:58:15。

    __topic__

    主题,固定为cps_callback_event 。

    app_key

    AppKey。

    message_id

    消息ID,示例:868947123456789。

    event_time

    回执事件时间,示例:2020-03-02 11:04:51。

    event_type

    回执事件类型,有以下几种类型:

    • sent:送出,指通过在线自有通道或厂商通道送出

    • sent_fail:送出失败,指推送到通道时通道同步返回的错误信息

    • arrive:到达

    • arrive_fail:到达失败,指推送到厂商通道时通道通过回执形式异步返回的错误信息,如厂商通道不支持回执则无arrive_fail日志

    • ext_ack:IOS 扩展通知回执,接入请参考 iOS Extension SDK集成

    • click:点击,点击事件依赖于设备侧和厂商通道的上报

    • clean:清除,清除事件依赖于设备侧和厂商通道的上报

    说明
    • 当前自有通道离线投递不会产生sent日志。

    • 到达、点击、清除事件依赖于设备或厂商通道的上报,部分通道不支持上报机制,如APNs。

    • iOS通知是投递给苹果APNs服务器的,而APNs不支持返回arrive回执,所以使用APNs厂商通道将不会产生arrive回执信息。

    • iOS的清除请注意配置:iOS通知删除上报配置

    device_id

    设备ID,示例:96d7c9db01ccxxxxxxxxxxxxxxxxxxxx。

    device_type

    设备类型,示例:ANDROID/IOS/HARMONY。

    last_active_time

    设备最后活跃时间,示例:2025-01-31 11:58:02。

    app_version

    应用版本号,示例:5.20。

    client_ip

    客户端IP。

    brand

    设备品牌,示例:vivo。

    network_type

    设备网络类型,示例:WIFI。

    os

    设备操作系统,示例:Android。

    os_version

    设备操作系统版本或API Level,示例:34。

    isp

    设备所属运营商,示例:联通。

    job_key

    推送任务自定义标识,当推送请求的JobKey不为空时,回执日志中会附带该字段。示例:123。

    event_channel

    发送通道,可能的值有:accs、huawei、honor、xiaomi、oppo、vivo、meizu、gcm、fcm、apns,后续可能随功能调整而增加通道类型。

    vendor_message_id

    厂商通道消息ID。

    reason

    发送失败或到达失败原因。一般格式为“code#msg”,code为厂商通道错误码,msg为错误解释或HTTP Code。错误信息查看错误解释,或直接根据code查询厂商通道的错误码文档获取。

    owner_id

    阿里云主账号的uid。

消息回执分析

  1. 返回 回执日志 主页面。

  2. 单击分析,进入Android消息回执分析/iOS消息回执分页面。

  3. 输入app_key对回执分析结果进行过滤。

  4. 回执分析中将展示以下信息。

    参数

    说明

    来源IP分布

    展示所选时间范围内所有回执的IP分布情况。

    总数

    展示所选时间范围内所有回执的总数。

    到达数

    所有送达到设备的消息总数。

    Android:所有设备收到的消息总数。Android端自有通道、厂商通道均有送达的回执,到达数是所有到达类型回执的总和。

    iOS:iOS通知是投递给苹果APNs服务器的,到达依据是只要苹果服务器没有返回错误反馈,就认为送达。

    HarmonyOS:所有设备收到的消息总数。HarmonyOS端自有通道、厂商通道均有送达的回执,到达数是所有到达类型回执的总和。

    点击数

    展示所选时间范围内,推送到设备的通知或消息被用户点击的数量。统计方式:event_typeclick的所有回执数量。

    回执趋势

    展示所选时间范围内所有回执类型的数量趋势。

    品牌分布

    展示时间范围内所有推送成功的设备的品牌分布情况。

    运营商分布

    展示时间范围内所有推送成功的设备的运营商分布情况。

    操作系统分布

    展示时间范围内所有推送成功的设备的操作系统分布情况。

    操作系统版本分布

    展示时间范围内所有推送成功的设备的操作系统版本分布情况。

日志查询语句示例

说明

查询分析语句有查询语句和分析语句构成,格式为“查询语句 | 分析语句”,详情请参见查询与分析快速指引

IOS 示例

统计 IOS 当天的点击数

时间范围选择“今天”,输入以下查询语句,点击“查询/分析

device_type:IOS and event_type:click| 
SELECT COUNT(1) AS "今日点击数" FROM log 

依次点击“统计图表-通用配置-图表类型”选择“统计图Pro 统计图Pro_icon”,效果如下:

today_click_count

点击 “添加到仪表盘”可以将图表放到您的统计大盘中

统计 IOS 应用在推送各阶段的折损率

device_type:IOS and (event_type:sent or event_type:ext_ack or event_type:click) | 
SELECT
  event_type,
  COUNT(1) AS cnt
FROM  log
GROUP BY
  event_type
ORDER BY   cnt DESC

依次点击“统计图标-通用配置-图标类型”选择“漏斗图Pro漏斗图_icon”,“标准配置-单位”选择“自定义”,效果如下:

image

统计 IOS 扩展到达率(=扩展回执数/送出数)

device_type: IOS| 
SELECT
  SUM(
    CASE
      WHEN event_type = 'ext_ack' THEN 1
      ELSE 0
    END
  ) * 1.0 
  / 
  SUM(
    CASE
      WHEN event_type = 'sent' THEN 1
      ELSE 0
    END
  ) AS "扩展到达率"

依次点击“统计图表-通用配置-图表类型”选择“统计图Pro 统计图Pro_icon”,“标准配置-格式化”选择“percent(0-1)”,效果如下:

image

按天统计 IOS 扩展到达率趋势

device_type: IOS| 
SELECT
  date_trunc('day', __time__) AS ts_day,
  SUM(CASE WHEN event_type = 'ext_ack' THEN 1 ELSE 0 END) * 1.0 /
  NULLIF(SUM(CASE WHEN event_type = 'sent'   THEN 1 ELSE 0 END), 1) AS "扩展到达率"
GROUP BY
  ts_day
ORDER BY
  ts_day

依次点击“统计图标-通用配置-图标类型”选择“线图Pro线图pro_icon

然后点击“通用配置-数据配置”,打开“数据补全”开关,补全窗口默认“auto”,补全值默认“0”

然后打开图表上的“时序模式”,“标准配置-格式化”选择“percent(0-1)”,效果如下:

image

Android 示例

统计 Android 各通道送出数

device_type: Android | 
SELECT
  event_channel AS channel,
  COUNT(1) AS cnt
FROM log
GROUP BY
  event_channel
ORDER BY
  cnt DESC

依次点击“统计图标-通用配置-图标类型”选择“漏斗图Pro柱状图icon”,效果如下:

android_channel_distribution

按小时统计 Android 设备 accs 在线通道的点击数趋势

device_type: ANDROID AND event_channel: accs| 
SELECT
  date_trunc('hour', __time__) AS ts_hour,
  COUNT(*) AS "点击数"
GROUP BY
  ts_hour
ORDER BY
  ts_hour

依次点击“统计图标-通用配置-图标类型”选择“线图Pro线图pro_icon

然后点击“通用配置-数据配置”,打开“数据补全”开关,补全窗口默认“auto”,补全值默认“0”

然后打开图表上的“时序模式”,效果如下

click_hour_trend

统计 Android 应用在推送各阶段的折损率

device_type: Android and (event_type:sent or event_type:arrive or event_type:click) | 
SELECT
  event_type,
  COUNT(1) AS cnt
FROM  log
GROUP BY
  event_type
ORDER BY
  cnt DESC

依次点击“统计图标-通用配置-图标类型”选择“漏斗图Pro漏斗图_icon”,“标准配置-单位”选择“自定义”,效果如下:

image