---
code: client_cpp_sdk_debug
name: "实时调试"
wikiToken: JHlow8C2ti71WgkVMPpc1cvan6M
parentWikiToken: OlznwgrzoieRjPkq1VdcUuwmnbe
updateTime: 1749552532000
sourceUrl: https://docs-v2.thinkingdata.cn/?version=v5.0&lan=zh-CN&code=client_cpp_sdk_debug
---
# 实时调试

在SDK接入过程中，您可以通过查看SDK在IDE控制台中的日志或者使用 AE 的Debug功能，进行实时调试。

### 一、打印SDK日志

```
ThinkingAnalyticsAPI::EnableLogType(*LOGCONSOLE*);//控制台打印日志
ThinkingAnalyticsAPI::EnableLogType(*LOGTXT*);//日志输出到本地文件
```

<!-- unsupported block: 34 -->

打开日志后，可以在IDE中过滤 ThinkingAnalytics 相关的日志来观察 SDK 的数据上报。

### 二、开启 Debug 模式

开启Debug模式需要如下两步操作:

1. 客户端开启Debug模式
以下是客户端开启Debug模式的示例代码:

```
// 获取 TDConfig 实例
TDConfig config;
config.appid = TA_APP_ID;
config.server_url = TA_SERVER_URL;
/*
设置运行模式为 Debug 模式
NORMAL模式:数据会存入缓存，并依据一定的缓存策略上报,默认为NORMAL模式；建议在线上环境使用
Debug模式:数据逐条上报。当出现问题时会以日志和异常的方式提示用户；不建议在线上环境使用
DebugOnly模式:只对数据做校验，不会入库；不建议在线上环境使用
 */
config.mode = TDMode::*TD_DEBUG*;
// 初始化 SDK
ThinkingAnalyticsAPI::Init(config);
```

1. AE 后台添加Debug设备
为了避免 Debug 模式在生产环境上线，规定只有指定的设备才能开启 Debug 模式。只有在客户端开启了 Debug 模式，并且设备 ID 在 AE 后台的"埋点管理"页的"Debug 数据"板块中配置了的设备才能开启 Debug 模式。

设备 ID 可以通过以下三种方式获取：

- AE 平台中事件数据中的 #device_id 属性
- 客户端日志：SDK 初始化完成后会打印设备 DeviceId
- 通过实例接口调用：获取设备ID
<!-- unsupported block: 34 -->

Debug 模式可能会影响数据采集质量和 App 的稳定性，只用于集成阶段数据验证，不要在线上环境使用。
