跳转至

发送事件属性

概述

游戏事件日志由必需的属性和用户定义的属性组成。 如果链接Hive SDK v4,将添加自动收集的属性,无需单独传输。


必需属性

传输游戏事件日志时**必须包含该属性**。

必需的属性命名约定

必需的属性名称必须以 驼峰式 (camelCase) 或 小写 (lowercase) 格式发送。 如果您像 user_id 那样将其发送到蛇箱 (snake_case),它将无法正确处理,并且将被隔离到 rescue 表中

属性名称 描述 数据类型 示例
userId 基于帐户的用户标识符 STRING 100001
deviceId 基于终端的用户标识符 STRING 100000
identifierProvider 用户标识符发布系统。已修复 hive STRING hive
appId Hive 控制台 > Project ID 已在应用中心注册 STRING com.com2us.game.ios
appIdGroup Hive 控制台 > Game 应用中心下发 ID. appId 传输时自动生成 STRING com.com2us.game
eventTime 事件发生的时间。 RFC 3339 国际标准(包括时区) STRING 2026-07-20T14:01:01+09:00
eventName 对事件进行分类的事件名称 STRING asset_drop
appId / appIdGroup 传输规则

发送事件时,必须包含 appIdappIdGroup

  • 如果您知道appId:只需发送appIdappIdGroup 是自动生成的。
  • 如果您不知道appId:直接发送appIdGroup
  • 如果同时发送两个值,appIdGroup会根据appId重新生成,所以发送appId时不要包含appIdGroup
传输所需属性时的注意事项

如果满足以下任一条件,则事件日志**隔离到表 rescue**:

  • 如果 appIdappIdGroup 均不存在
  • 如果任何剩余的必需属性(userIdidentifierProviderdeviceIdeventTimeeventName)丢失或具有空值。
  • 即使该值未知,也不要留空,而是填写一个随机值,例如 "0""unknown" 并发送。

eventName 命名约定

建议用于eventName的事件名称按照以下规则编写。

  • 推荐字符:英文字母(a–z、A–Z,区分大小写)、数字 (0–9)、下划线 (_)
  • 分隔符:单词之间用下划线 (_) 分隔,而不是空格。
  • 格式:建议使用能够清楚说明事件的英文 noun_verb 格式。
  • 示例item_purchaselevel_uptutorial_completestage_start
Warning

不符合上述规则的事件名称在分析中的使用可能会受到限制。


eventTime 格式规则 (RFC 3339)

eventTime 遵循格式 RFC 3339 并且必须包含时区信息。

形式:

YYYY-MM-DDTHH:MM:SS[.sss]+HH:MM 或 YYYY-MM-DDTHH:MM:SSZ

可接受的示例:

2026-07-20T14:01:01+09:00(KST,韩国标准时间)
2026-07-20T05:01:01Z            (UTC)
2026-07-20T14:01:01.123+09:00(包括毫秒)
2026-07-20T23:01:01-05:00(美国东部时间)

不允许的示例:

2026-07-20 14:01:01(无时区→隔离)
2026-07-20(没有时间→隔离)
1719835261(Unix timestamp → 隔离)
14:01:01(无日期 → 隔离)

eventTime

  • eventTime 会在管道中**转换为 UTC**,并存储在表的 dateTime 列中。原始值会原样保留在 attributes.eventAttributes.eventTime 中。
传输eventTime时的注意事项

eventTime 仅接受基于当前时间的**过去 31 天到未来 31 天**范围内的值。超出此范围,事件日志将隔离到表 rescue


用户定义的属性

游戏中想要传输的信息由属性名称和属性值组成,并与所需的属性一起直接传输。


属性名称规则

规则 描述 示例
起始信 必须以 小写或大写字母 开头 levelStage
区分大小写 自定义属性区分大小写 market != Market != MARket
允许的特殊字符 仅允许使用下划线 (_) 作为特殊字符 item_name

不能使用的属性名称(保留字)

发送自定义属性时的注意事项

如果您使用下面的保留字作为属性名称,它们将被**隔离到 rescue 表中**。无论情况如何,这都同样适用。

保留字 备注
attributes 不论大小写(例如 AttributesATTRIBUTES
eventAttributes 大小写无关
hiveAttributes 大小写无关

属性取值规则

属性值格式注意事项

只能传输两种类型的属性值:数字类型**和**字符类型。 当以 JSON 对象、JSON 数组或 JSON 类型字符串的形式传输时,它是**隔离到 rescue 表中**。

数据类型 描述 示例
数字 整数或小数。发送时不带引号 "level": 10"exp": 1.5
字符类型 发送之前请务必将其用双引号 ("") 括起来 "character_name": "AA"

如果属性值的形式为对象JSON、数组JSON或JSON形式的字符串,则**隔离到表rescue**。

// JSON 对象(不允许)
"info": {"key": "value"}

// JSON 数组(不允许)
"items": [1, 2, 3]

// 形式为 JSON 的字符串(不允许)
"data": "{\"key\": \"value\"}"


相同属性名的重复传输

如果传输两个或多个相同的属性名称,则随机选择属性值并且**仅存储一个属性值**。


Hive SDK v4 自动收集的属性

仅当客户端将事件日志发送到 Hive SDK v4 时自动收集。

  • 如果用户直接发送具有相同属性名称的值,则存储**用户发送的值**,而不是SDK自动收集的值。
  • 以下属性存储在表中的 attributes.eventAttributes 中。

Hive SDK v4 如果您使用事件日志传输功能,SDK 是直接从客户端设备收集和传输的属性。

必需的属性

必需属性中,SDK和v4是自动收集的属性。 (不包括 eventName

属性名称 描述 示例
userId 基于帐户的用户标识符。链接 Hive SDK 时,AuthV4.getPlayerInfo()playerId 100001
deviceId 基于终端的用户标识符。链接 Hive SDK 时,AuthV4.getPlayerInfo()did 100000
identifierProvider 用户标识符发布系统。目前仅支持 Hive 和 SDK 集成,因此 hive 已修复 hive
appId Hive 控制台 > Project ID 已在应用中心注册 com.com2us.game.ios
appIdGroup Hive 控制台 > Game 应用中心下发 ID. appId 传输时自动生成 com.com2us.game
eventTime 事件发生的时间。 RFC 3339 国际标准(包括时区) 2026-07-20T14:01:01+09:00

用户/帐户识别信息

属性名称 描述 示例
vid 为每个项目(游戏)颁发的唯一用户帐户标识符(与userId相同)。登录完成后有效。 Hive 平台(身份验证) 136910540
uid 这是注册 Hive 会员时颁发的唯一帐户标识符,是优于 vid 的概念。 Hive 平台(会员) 223786026
did 安装应用程序时为每个设备颁发的唯一标识符(与 deviceId 相同)。重新安装应用程序后,将发出一张新卡。 Hive 平台(配置) 938743951
vid_type vid的发行方案和账户类型。 Hive 平台(应用中心) v4
analytics_id UUID.,由客户端创建并保留用于设备跟踪,一直保留到应用删除,并与 MMP 跟踪器共享相同的值。 Hive 平台(配置) 1qIXG3uDT4WzhV1e46GIYQ==

时间/身份信息

属性名称 描述 示例
dateTime 这是传输事件日志时生成的事件的日期和时间。 (yyyy-MM-dd HH🇲🇲ss 格式) Hive SDK (核心) 2026-01-01 00:00:00
guid UUID(连字符已删除)每次传输事件日志时生成。用于事件日志的唯一标识和重复数据删除。 Hive SDK (核心) ecbfbd7fcdc340e1b8a433999c5290c1
is_hive_time 标记事件日志中的时间戳是否Hive与服务器时间同步。 (Y/N) Hive SDK (核心) Y
timezone dateTime 该值所基于的时区偏移信息。 Hive SDK (核心) GMT+09:00
is_url_encode 传输事件日志时是否应用URL编码的标志。 (Y 已修复) Hive SDK (核心) Y

设备信息

属性名称 描述 示例
model 设备的硬件型号标识符。 设备 iPhone17,3
os 这是设备的操作系统识别码。 (iOS: I, Android: A) 设备 I
os_version 您设备的操作系统版本。 设备 26.5.2
cpu 设备的CPU架构。 设备 arm64
language 用户在设备上设置的首选语言和区域设置代码。 设备 ko-KR
device_country 基于设备区域设置的国家/地区代码。 设备 KR
hive_country 由 Hive 服务器根据 IP 连接确定的国家/地区代码。使用VPN时,可能与设备设置不同,无法判断时记录为UNKNOWN Hive 平台(核心) KR

SDK/应用程序构建信息

属性名称 描述 示例
app_version 这是应用程序的内部构建版本。 Hive SDK (构建) 1.0.32
app_version_display 这是商店中显示的应用程序发布版本。 Hive SDK (构建) 1.0.32
sdk_version 应用于当前项目的 Hive 和 SDK 版本。 Hive SDK (构建) 4.26.4.0
interface_version 当前应用的SDK接口版本。 Hive SDK (构建) 4.26.4.0
build_time 应用了 Hive 和 SDK 的构建时间戳。 Hive SDK (构建) 202605281104

SDK 设置信息

属性名称 描述 示例
server_id 客户端设置的游戏服务器标识符为API。 Hive SDK (设置) kr
game_language 标准游戏内语言代码设置为 API。如果未设置,它将被设备语言替换。 Hive SDK (设置) ko
channel 基于配置文件的平台通道分隔符。 Hive SDK (设置) HIVE
market 这是发布应用程序的市场代码。 (Apple: AP, Google: GO) Hive SDK (设置) AP
company 标识为应用程序提供服务的发布者或公司的字符串。 Hive 平台(应用中心) hive
companyIndex 为应用程序提供服务的发布商或公司的索引。 Hive 平台(应用中心) 3
age_gate_u13 13 岁以下人士的年龄限制 (COPPA)。 SDK 在初始化之前,可能是null。 Hive SDK (设置) false

接收服务器信息

属性名称 描述 示例
clientIp 从接收服务器中提取发送事件日志 IP. 的客户端的实际连接,并在保存时屏蔽最后一个八位字节。 接收服务器 (WAS) 123.123.123.0

注意事项 & Tips

  • 必需的属性名称必须以驼峰大小写或小写形式发送,如果以蛇形大小写 (user_id) 发送,它们将被隔离到 rescue 表中
  • 必须包含 appIdappIdGroup,否则将被隔离。
  • eventTime 只能采用 RFC 3339 格式(包括时区),并且如果基于当前时间超过过去或未来 31 天,则会被隔离。
  • attributeseventAttributeshiveAttributes 不能用作用户定义的属性名称(不区分大小写)。
  • 属性值仅允许数字和字符类型,JSON对象、数组、JSON形式的字符串被隔离。
  • 有关如何检查和重新发送隔离日志的信息,请参阅数据隔离

相关菜单