> ## 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.

# 调试跟踪

> 启用 PlayFab Services SDK 调试跟踪：设置详细级别、将输出路由到 Visual Studio 调试器、转发到游戏日志或将跟踪写入文件。

此 PlayFab SDK 支持可扩展的调试跟踪。当你遇到错误并希望全面了解游戏发出的调用以及服务器返回的结果时，可使用调试跟踪。有多个选项可用于控制跟踪详细级别以及与你游戏自身的调试日志集成。你还可以将输出定向到 Visual Studio 中的输出窗格。

## 启用并设置详细级别

以下代码示例启用调试跟踪并将调试错误级别设置为 **Verbose**。你也可以将调试错误级别设置为 **Error**，仅显示跟踪失败的调用；或设置为 **Off** 以禁用跟踪。）

生成的调试输出会在 Visual Studio 中运行项目时发送到输出窗格。

```cpp theme={null}
HCSettingsSetTraceLevel(HCTraceLevel::Verbose);
HCTraceSetTraceToDebugger(true);
```

## 连接到游戏日志

要将 PlayFab 的跟踪调试连接到游戏自身的调试日志，请使用 **HCTraceSetClientCallback**。提供一个回调函数，该回调可以获取 PlayFab 跟踪输出并将其定向到游戏日志。

```cpp theme={null}
void CALLBACK TraceCallback(
    _In_z_ char const* areaName,
    enum HCTraceLevel level,
    uint64_t threadId,
    uint64_t timestamp,
    _In_z_ char const* message
)
{
    // Log info
}

HCTraceSetClientCallback(TraceCallback);
```

## 将跟踪写入文件

要将 PlayFab 跟踪输出写入磁盘上的日志文件，请调用 [**PFTraceEnableTraceToFile**](/services/playfab/api-references/c/pftrace/functions/pftraceenabletracetofile) 并传入应创建跟踪文件的目录。请在初始化后调用此函数。

```cpp theme={null}
PFTraceEnableTraceToFile("C:\\GameLogs\\PlayFabTraces");
```

此函数独立于上述 HCTrace 函数。你可以将文件跟踪与调试器输出和客户端回调一起使用。

## 参考

[PlayFab API 参考文档](/services/playfab/api-references/c/pftrace/pftrace_members)
[Trace API 参考文档](/reference/live/httpclient/trace/trace_members)


## Related topics

- [在 PlayFab 统一 SDK 中进行调试跟踪](/zh-CN/services/playfab/sdks/unified-sdk/debug-trace.md)
- [游戏存档快速入门](/zh-CN/services/playfab/player-progression/game-saves/quickstart.md)
- [Android 快速入门](/zh-CN/services/playfab/sdks/c/quickstart-android.md)
- [GDK 快速入门](/zh-CN/services/playfab/sdks/c/quickstart-gdk.md)
- [iOS 快速入门](/zh-CN/services/playfab/sdks/c/quickstart-ios.md)
