使用遥测密钥
你可以在 GameManager 中Data 部分下的 Telemetry Keys 选项卡管理为标题配置的密钥。
创建密钥后,你可以在从游戏客户端调用 WriteTelemetryEvents 时使用它,通过 HTTP 请求头 X-TelemetryKey 传入:
调用方应提供遥测密钥或实体令牌其中之一。如果两者都提供,则遥测密钥将被忽略,请求将被视为未提供遥测密钥进行处理。
限制
使用遥测密钥时适用以下限制:- 每个标题最多可以配置五个遥测密钥。
- 遥测密钥只能用于通过 WriteTelemetryEvents API 发送遥测事件。它们不能用于通过 WriteEvents API 发送 PlayStream 事件。
- 已将 Insights 保留期设置为大于 30 天的标题目前无法配置遥测密钥。
为事件指定实体
PlayFab 事件通过其Entity 属性指明事件的主体。当你使用实体令牌身份验证发送遥测数据时,此字段会自动填充有关已登录实体的信息。但是,当你使用遥测密钥时,没有实体处于登录状态。因此,使用遥测密钥发送的遥测事件不允许将 PlayFab 内置实体指定为其主体。
在使用遥测密钥时,你可能仍希望将遥测事件与某个主体(例如游戏中使用的自定义玩家标识符)关联起来。为此,你可以在客户端构造事件时指定一个外部实体。
外部实体只是你将 type 设置为 external 的实体。它们不是 PlayFab 实体系统的正式组成部分,仅在此上下文中用于提供一种便捷机制,将遥测事件与你系统中有意义的主体标识符关联起来。
要在代码中构造事件时将外部实体指定为主体,你应该:
- 将事件的
Entity.type字段设置为external(区分大小写)。 - 将事件的
Entity.id字段设置为你的自定义主体标识符,最长不超过 64 个字符。
事件的
OriginInfo.Key 属性将包含用于引入该事件的密钥名称。如果你配置了多个遥测密钥,可以使用此属性查看事件是通过哪个密钥引入的。