> ## Documentation Index
> Fetch the complete documentation index at: https://devdocs.xbox.com/llms.txt
> Use this file to discover all available pages before exploring further.

# 事件概述

> XBOX Live 游戏事件如何馈送用户统计信息服务，以更新基于事件的玩家数据标题的统计信息、排行榜和匹配。

**注意：** 本文仅适用于使用基于事件的用户统计信息，而不适用于标题管理的用户统计信息。

**注意** Application Insights 已被弃用。请使用 [fiddler](https://learn.microsoft.com/windows/uwp/xbox-live/using-xbox-live/troubleshooting/how-to-set-up-fiddler-for-debugging) 来监视事件。

## 将游戏事件写入 XBOX 服务用户统计信息服务

游戏中最令人兴奋的时刻是重要事情发生的时刻——击败对手、被击败、移动到某个位置、发射武器、采摘花朵。通过使用 XBOX 服务，标题可以共享玩家游戏中重要事件的信息。详细信息可以发送到 XBOX 服务，该服务记录有关用户的统计信息。这些统计信息可用于用户统计信息、排行榜和匹配。

事件以及作为事件一部分发送的任何数据到达服务后，XBOX 服务会处理您在标题的服务配置中定义的规则，以创建或更新用户统计信息、排行榜等。

### 合作伙伴中心的配置

首先，在合作伙伴中心的"玩家统计信息 | 统计信息规则"页面定义您的事件。在合作伙伴中心定义了事件和统计信息之后，您可以执行以下步骤来发送事件。

### 编写事件

对于 Microsoft Game Development Kit (GDK) 标题，发送事件的 API 与 XBOX One 软件开发工具包标题不同，并且不需要使用清单文件。

[XblEventsWriteInGameEvent](/reference/live/xsapi-c/events_c/functions/xbleventswriteingameevent) 函数声明为：

```cpp theme={null}
STDAPI XblEventsWriteInGameEvent(
    _In_ XblContextHandle xboxLiveContext,
    _In_z_ const char* eventName,
    _In_opt_z_ const char* dimensionsJson,
    _In_opt_z_ const char* measurementsJson
) XBL_NOEXCEPT;
```

`xboxLiveContext` 是 XBOX 服务上下文句柄。

`eventName` 是在合作伙伴中心定义的事件名称。

`dimensions` 是与事件属性对应的属性包，其取有限的一组值。例如：关卡、武器或角色。

`measurements` 是与具有不确定值集的事件属性对应的属性包。例如：驾驶里程、击杀敌人数或游玩分钟数。

维度和度量将在下面进一步讨论。

#### 度量和维度

当为 XBOX 服务上的事件调用 [XblEventsWriteInGameEvent](/reference/live/xsapi-c/events_c/functions/xbleventswriteingameevent) 时，无论您将事件属性作为维度还是度量传递，都没有区别。仅当您在 Application Insights 上分析事件以进行遥测时，这些差异才相关——这对游戏体验没有影响。有关详细信息，请参阅 [Application Insights API 中的自定义事件和度量](https://azure.microsoft.com/documentation/articles/app-insights-api-custom-events-metrics/)。

维度可用于筛选事件或在事件上进行透视。例如：显示完成第 6 关的用户，或显示所使用武器是"Minigun"的所有"击杀敌人"事件。

度量可以图形方式显示，或者用于排行榜。例如：赛道时间、连续获胜回合等。

但是就与 XBOX 服务一起使用而言，无论您将事件属性作为度量还是维度传递都没有区别，出于解锁成就和其他 XBOX 服务相关功能的目的，这将以相同方式处理。

### 调试 XBOX 服务事件

如果来自您的标题的事件未成功到达 XBOX 服务，则英雄统计信息和排行榜不会更新。如果您怀疑事件未成功被 XBOX 服务接收，请尝试以下步骤：

* 验证您的沙盒是否正确。

* 在设备上设置 Fiddler。在 Fiddler 中，您应该看到如下事件：

<img src="https://mintcdn.com/microsoft-4404708b/gzrdvT5kpqAXKEQt/images/gdk/services/fiddler1.png?fit=max&auto=format&n=gzrdvT5kpqAXKEQt&q=85&s=303d2cc63ba1e38513d100d0ba5ebfcf" alt="Fiddler 未解码事件" width="1313" height="899" data-path="images/gdk/services/fiddler1.png" />

查找对 `v10.vortex-win.data.microsoft.com` 的调用。您需要如所示解码请求正文，然后如果查看 JSON，将看到类似以下内容：

<img src="https://mintcdn.com/microsoft-4404708b/gzrdvT5kpqAXKEQt/images/gdk/services/fiddler2.png?fit=max&auto=format&n=gzrdvT5kpqAXKEQt&q=85&s=77448c0f355fcf3636ead1bf44ea5e88" alt="Fiddler 解码事件" width="1307" height="997" data-path="images/gdk/services/fiddler2.png" />

您可以验证事件名称是否符合预期。您的标题 ID 将附加到该名称前。您还应该验证是否收到 200 返回代码。

## 另请参阅

[基于事件的统计信息与标题管理的统计信息](/services/xbox-services/player-data/stats-leaderboards/live-stats-eb-vs-tm#update-frequency)。


## Related topics

- [事件](/zh-CN/services/xbox-services/player-data/stats-leaderboards/event-based/events/live-events-nav.md)
- [基于事件的统计数据初览](/zh-CN/services/xbox-services/player-data/stats-leaderboards/event-based/config/live-stats-first-glance.md)
- [Insights](/zh-CN/services/playfab/data-analytics/legacy/insights/overview.md)
- [XBOX Series X|S 音频硬件概述](/zh-CN/build/console-features/audio/overviews/scarlett-audio.md)
- [基于事件的成就概述](/zh-CN/services/xbox-services/player-data/achievements/event-based/live-achievements-eb-overview.md)
