

本文属于机器翻译版本。若本译文内容与英语原文存在差异，则一律以英文原文为准。

# Amazon GameLift Servers 控制台中的游戏和玩家会话
<a name="gamelift-console-game-player-sessions-metrics"></a>

您可以使用 Amazon GameLift Servers 控制台来处理游戏会话和玩家会话。有关游戏会话和玩家会话的更多信息，请参阅[Amazon GameLift Servers 和玩家体验](game-sessions-intro.md)。Amazon GameLift Servers 控制台提供相关信息和工具，可帮助您调查游戏会话中的问题。

支持的操作：
+ 浏览托管在特定实例集上的游戏会话和玩家会话活动。
+ 在多个实例集中查找特定玩家的游戏会话活动。
+ 关闭特定游戏会话。

## 查看游戏会话详情
<a name="game-sessions"></a>

游戏会话和玩家会话数据按托管游戏会话的实例集组织。

**访问游戏会话和玩家会话信息**

1. 在 [Amazon GameLift Servers 控制台](https://console.aws.amazon.com/gamelift/)中，打开左侧导航窗格。选择托管解决方案类型，并打开**实例集**页面。例如：
   + **托管**、**Anywhere**、**实例集**
   + **托管**、**托管式 EC2**、**实例集**
   + **托管**、**托管容器**、**实例集**

1. 每个 **Fleets** 页面都会显示您当前选择的舰队列表。 AWS 区域请选择要查看其游戏会话数据的实例集。

1. 在实例集的详情页面中，打开**游戏会话**选项卡。此选项卡将列出实例集中托管的所有游戏会话及其摘要信息。您可以根据需要使用**首选项**工具调整表内容（请参阅表右上角的 ![\[Gear icon representing settings or configuration options.\]](http://docs.aws.amazon.com/zh_cn/gameliftservers/latest/developerguide/images/settings.png) 图标）。自定义首选项将保存到您的 AWS 账户用户，并在您查看此页面时自动应用。

1. 从列表中选择一个游戏会话以查看更多信息。

1. 如果该游戏会话包含玩家会话数据，请选择**查看玩家会话**以打开玩家会话查询工具，其中会自动填充游戏会话 ID。

**游戏会话**详情包括以下信息：
+ **状态** – 游戏会话状态。
  + **激活** – 实例正在启动游戏会话。
  + **活动** – 游戏会话正在运行且可以接收玩家（取决于会话的[玩家创建策略](https://docs.aws.amazon.com/gamelift/latest/apireference/API_GameSession.html)）。
  + **已终止** – 游戏会话已结束。
+ **ARN** – 游戏会话的 Amazon 资源名称。
+ **名称** – 为游戏会话生成的名称。
+ **位置** – Amazon GameLift Servers 托管游戏会话的位置。
+ **创建时间** – Amazon GameLift Servers 创建流会话的日期和时间。
+ **结束时间** – 游戏会话结束的日期和时间。
+ **DNS 名称** – 游戏会话的主机名。
+ **IP 地址** – 为游戏会话指定的 IP 地址。
+ **端口** – 用于连接到游戏会话的端口号。
+ **创建者 ID** – 发起游戏会话的玩家的唯一标识符。
+ **玩家会话创建策略** – 指示游戏会话是否接受新玩家。
+ **游戏扩缩保护策略** – 要在 Amazon GameLift Servers 在实例集中启动的所有新实例上设置的游戏会话保护类型。

**游戏数据**  
游戏属性数据，格式为字符串，在启动时发送到游戏会话。

**游戏属性**  
游戏属性数据，格式成 key/value 对，在启动时发送到您的游戏会话。

**对战数据**  
如果游戏会话是使用 FlexMatch 创建的，对战数据将描述有关对战配置和规则集的信息。这包括每个匹配项的玩家属性和队伍分配。数据采用 JSON 格式。有关 FlexMatch 对战的更多信息，请参阅[构建对战构建器](https://docs.aws.amazon.com/gameliftservers/latest/flexmatchguide/matchmaker-build.html)。

# 查找玩家会话数据
<a name="player-sessions"></a>

如果您的游戏托管解决方案使用玩家会话并提供独特的玩家 IDs，则您可以浏览多个队列中过去或现在的游戏会话中特定于玩家的活动。可使用以下任一方法打开玩家会话查询工具：
+ 在 Amazon GameLift Servers 控制台中，打开左侧导航窗格并选择**玩家会话查找**，然后选择要使用的过滤器类型。
+ 要查看实例集的游戏会话详细信息，请选择**查看玩家会话**。查找工具将打开游戏会话，其中已预先选择了游戏会话 ID 过滤器并填写了游戏会话值。

使用查找工具时，您可以提供以下任何信息：
+ 玩家会话 ID，用于获取有关特定玩家会话的信息。
+ 游戏会话 ID，用于获取有关所请求游戏会话的所有玩家会话的信息。结果代表已预留位置或连接到游戏会话的所有玩家。您可以选择按玩家会话状态筛选结果。
+ 玩家 ID，用于获取所请求玩家的所有玩家会话信息。结果代表玩家参与的所有游戏会话。

**注意**  
查找工具会搜索当前选定区域内的所有玩家会话活动 AWS 区域。如果您在该区域内有多个实例集，结果将包含所有实例集中的玩家会话活动。对于多位置实例集，结果还将包含实例集远程位置的玩家会话活动。

 

每个游戏会话中将收集以下玩家会话数据：
+ **玩家会话 ID** – 分配给玩家会话的标识符。
+ **玩家 ID** – 玩家的唯一标识符。单击此 ID 获取更多玩家信息。
+ **游戏会话 ID** – 分配给游戏会话的标识符。
+ **实例集 ID** –分配给托管游戏会话的实例集的标识符。
+ **状态** – 玩家会话的状态。有以下可能状态：
  + **已预留** – 玩家会话已预留，但玩家尚未连接。
  + **活动** – 玩家会话已连接到游戏服务器。
  + **已完成** – 玩家会话已结束；玩家不再处于连接状态。
  + **超时** – 玩家连接失败。
+ **开始时间** – 玩家连接到游戏会话的时间。
+ **结束时间** – 玩家从游戏会话断开连接的时间。
+ **连接数据** – 玩家用于连接到游戏会话的 IP 地址、DNS 名称和端口。
+ **玩家数据** – 玩家会话创建期间提供的有关玩家的信息。

# 关闭游戏会话
<a name="terminate-sessions"></a>

使用 Amazon GameLift Servers 控制台关闭特定的游戏会话。此功能为您提供了一种简单快捷的方法来定位游戏会话并发送终止信号。另一种终止方法则要求您找到运行游戏会话的实例集实例，远程访问该实例，然后手动关闭游戏会话。

您可以出于任何原因关闭游戏会话。最常见的原因是为了解决无法自然关闭的游戏会话问题。此类问题会导致无法腾出游戏会话的托管资源来托管新的游戏会话，而且实例集的托管容量也随之降低。

**注意**  
此功能依赖于您的托管解决方案的某些配置设置，并且具有以下限制：  
游戏会话必须托管在运行游戏服务器生成包（使用适用于 Amazon GameLift Servers v5 或更高版本的服务器 SDK）的实例集上。如果您的游戏服务器部署的是旧版本，则需要通过远程访问来删除游戏会话。
如果游戏会话托管在 Anywhere 实例集上，则该实例集必须使用 Amazon GameLift Servers 代理来管理游戏服务器进程。

**终止游戏会话**

1. 在 [Amazon GameLift Servers 控制台](https://console.aws.amazon.com/gamelift/)中，打开左侧导航窗格。选择托管解决方案类型，并打开**实例集**页面。例如：
   + **托管**、**Anywhere**、**实例集**
   + **托管**、**托管式 EC2**、**实例集**
   + **托管**、**托管容器**、**实例集**

1. 每个 **Fleets** 页面都会显示您当前选择的舰队列表。 AWS 区域选择托管您要终止的游戏会话的实例集。

1. 在实例集的详情页面中，打开**游戏会话**选项卡。在游戏会话列表中，选择要终止的会话，然后选择**终止**按钮。

1. 在**终止游戏会话中？**窗口中，确认您正在关闭正确的游戏会话并选择终止方法。
   + 正常关闭游戏会话：此选项会向托管游戏会话的服务器进程发送关闭信号。如果您的游戏服务器生成包已正确集成 Amazon GameLift Servers，则服务器进程会启动其游戏会话关闭序列，通知 Amazon GameLift Servers 该会话即将结束，然后停止。根据您的游戏设计，关闭序列可能包括正常完成游戏会话的步骤，例如保存数据和通知活跃玩家。此方法可能需要短暂延迟来完成游戏会话关闭序列。
   + 立即关闭游戏会话：此选项会向进程管理器发送信号，要求其关闭托管游戏会话的服务器进程。此选项会绕过正常的游戏会话关闭流程。即使服务器进程无法响应，它也可以终止游戏会话。

1. 确认游戏会话终止。您可以在**游戏会话**控制台页面上跟踪关闭进度。游戏会话状态将更改为“正在终止”，然后在关闭完成后更改为“已终止”。

**相关主题**
+ 您也可以使用 AWS SDK 和. 关闭游戏会话 AWS CLI。有关更多详细信息和示例，请参阅 Amazon GameLift Servers API 参考主题[TerminateGameSession](https://docs.aws.amazon.com/gameliftservers/latest/apireference/API_TerminateGameSession.html)。
+ 有关游戏服务器集成以及服务器进程如何响应来自 Amazon GameLift Servers 服务的信号的更多信息，请参阅[借助服务器 SDK 将 Amazon GameLift Servers 添加到游戏服务器](gamelift-sdk-server-api.md)。