Loading...
Loading...
Compare original and translation side by side
Conversation language: This skill document is in English, but all output to the user MUST be in the user's input language. English input → English reply; Chinese input → Chinese reply; Japanese input → Japanese reply. If uncertain, default to English. This applies to all output: section titles, phase names, template prompts, code comments, etc. ⚠️ CRITICAL: Many reference documents (wiki SDK docs, code examples) contain Chinese text. When reading Chinese source material to answer an English/Japanese user, you MUST translate headings, descriptions, and comments to the user's language. The source document's language is NOT the user's language. Use the Terminology Glossary above to map terms accurately. Do NOT copy Chinese text verbatim from this document into English/Japanese replies.Document link language: When providing official documentation URLs, usefor Chinese users,lan=zh-CNfor all others.lan=en-US
对话语言:本技能文档为英文,但所有输出给用户的内容必须使用用户输入的语言。英文输入→英文回复;中文输入→中文回复;日文输入→日文回复。若不确定,默认使用英文。此规则适用于所有输出内容:章节标题、阶段名称、模板提示、代码注释等。 ⚠️ 重要提示:许多参考文档(wiki SDK文档、代码示例)包含中文文本。当阅读中文源文档来回复英文/日文用户时,必须将标题、描述和注释翻译成用户使用的语言。源文档的语言并非用户的语言,请使用上方的术语对照表准确映射术语。 请勿直接将本文档中的中文文本复制到英文/日文回复中。文档链接语言:提供官方文档URL时,中文用户使用,其他用户使用lan=zh-CN。lan=en-US
| 中文 | English | Notes |
|---|---|---|
| 埋点方案 | Tracking Plan | AE project-level event/property definitions |
| 代码埋点 | Tracking Code Generation | Generating SDK/LogBus code from a plan |
| 埋点代码 | Tracking Code | The generated SDK init + track() calls + helpers |
| 输出方式 | Output Mode | insert (inject) or snippet (file delivery) |
| 插入 | Insert | Direct code injection into the user's project |
| 片段 / 代码片段 | Snippet | Code delivered as files under |
| 采集端 | Collection Platform / Platform | Where events are sent from: client, server, or both |
| 客户端 | Client | Client-side SDK (Android/iOS/Web/etc.) |
| 服务端 | Server | Server-side SDK (Java/Python/Go/etc.) |
| 两端都采集 | Both | Events collected from both client and server |
| SDK 集成模式 | SDK Integration Mode | |
| 用户体系 | User Identity System | distinct_id / account_id strategy |
| 校验脚本 | Validation / Debug Script | Test code to verify tracking works |
| LogBus2 配置 | LogBus2 Configuration | |
| LoggerConsumer | LoggerConsumer | Server SDK consumer that writes events to local log files |
| BatchConsumer | BatchConsumer | Server SDK consumer that uploads events in batches |
| 公共属性 | Super Property | Properties attached to all events automatically. ⚠️ The correct Chinese AE term is "公共属性" or "公共事件属性". Never translate "Super Property" as "超级属性" — that is NOT a valid AE term. |
| 预置属性 | Preset Property | System properties prefixed with |
| 事件属性 | Event Property | Custom properties on specific events |
| 用户属性 | User Property | Properties set on the user profile |
| 上报地址 | SERVER_URL | Data ingestion endpoint (different from web URL!) |
| APP_ID | APP_ID | Application ID from AE Admin → "Integration Config" |
| project_id | Project ID | AE project identifier (≠ APP_ID) |
| 自动采集 | Auto-track | Auto-collected events (app install, start, view, click) |
| 埋点方案上传 | Plan Upload | Upload tracking plan xlsx to AE |
| 中文 | English | 说明 |
|---|---|---|
| 埋点方案 | Tracking Plan | AE项目级别的事件/属性定义 |
| 代码埋点 | Tracking Code Generation | 基于方案生成SDK/LogBus代码 |
| 埋点代码 | Tracking Code | 生成的SDK初始化 + track()调用 + 辅助代码 |
| 输出方式 | Output Mode | insert(注入)或snippet(文件交付) |
| 插入 | Insert | 直接将代码注入用户项目 |
| 片段 / 代码片段 | Snippet | 代码以文件形式交付至 |
| 采集端 | Collection Platform / Platform | 事件发送来源:客户端、服务端或两者皆有 |
| 客户端 | Client | 客户端SDK(Android/iOS/Web等) |
| 服务端 | Server | 服务端SDK(Java/Python/Go等) |
| 两端都采集 | Both | 同时从客户端和服务端采集事件 |
| SDK 集成模式 | SDK Integration Mode | |
| 用户体系 | User Identity System | distinct_id / account_id策略 |
| 校验脚本 | Validation / Debug Script | 验证埋点是否生效的测试代码 |
| LogBus2 配置 | LogBus2 Configuration | LogBus2日志同步工具的 |
| LoggerConsumer | LoggerConsumer | 将事件写入本地日志文件的服务端SDK消费者 |
| BatchConsumer | BatchConsumer | 批量上传事件的服务端SDK消费者 |
| 公共属性 | Super Property | 自动附加到所有事件的属性。⚠️ AE官方正确中文术语为「公共属性」或「公共事件属性」,切勿将"Super Property"翻译为「超级属性」——这并非AE的有效术语。 |
| 预置属性 | Preset Property | 以 |
| 事件属性 | Event Property | 特定事件的自定义属性 |
| 用户属性 | User Property | 用户画像上设置的属性 |
| 上报地址 | SERVER_URL | 数据接入端点(与网页URL不同!) |
| APP_ID | APP_ID | 从AE管理后台→「集成配置」获取的应用ID |
| project_id | Project ID | AE项目标识符(≠ APP_ID) |
| 自动采集 | Auto-track | 自动采集的事件(应用安装、启动、页面浏览、点击) |
| 埋点方案上传 | Plan Upload | 将跟踪计划xlsx文件上传至AE |
.ae-cli/draft.json| Config Item | draft.json Field | Handling |
|---|---|---|
| AE projectId | | Has value → confirm; missing → ask |
| AE web address | | Has value → confirm; missing → ask |
| SERVER_URL | | Has value → confirm; missing → try lookup from project config, then ask if unavailable |
| APP_ID | | Has value → confirm; missing → try lookup from accessible project list, then ask if unavailable |
| SDK integration mode | | Has value → use directly |
| Client SDK type | | Has value → use directly |
| Server language | | Has value → use directly |
| User identity system | | Has value → use directly |
project_idAPP_IDhostSERVER_URLclient_platformsclient_sdk_typeclient_platforms: ["android", "openharmony"]meta.client_platform_languages{"android": ["java", "kotlin"]}yes.ae-cli/draft.json| 配置项 | draft.json字段 | 处理方式 |
|---|---|---|
| AE projectId | | 已有值→确认;缺失→询问 |
| AE网页地址 | | 已有值→确认;缺失→询问 |
| SERVER_URL | | 已有值→确认;缺失→尝试从项目配置中查找,若无法找到则询问 |
| APP_ID | | 已有值→确认;缺失→尝试从可访问项目列表中查找,若无法找到则询问 |
| SDK集成模式 | | 已有值→直接使用 |
| 客户端SDK类型 | | 已有值→直接使用 |
| 服务端语言 | | 已有值→直接使用 |
| 用户身份体系 | | 已有值→直接使用 |
project_idAPP_IDhostSERVER_URLclient_platformsclient_sdk_typeclient_platforms: ["android", "openharmony"]meta.client_platform_languages{"android": ["java", "kotlin"]}yesproject_idAPP_IDhostSERVER_URLmeta.project_idae-cli project info listprojectIdmeta.project_idappId<appId><projectId>appIdmeta.project_idae-cli project info get --project-id <project_id>serverUrlpushUrlpush_urlreceiverUrlpublicUrlpublicReceiverAddressprivateReceiverAddresspublicReceiverAddressprivateReceiverAddresspublicReceiverAddressSERVER_URL<url><projectId>SERVER_URLPUSH_URLae-cli config currentae-cli config set-host <AE_HOST>ae-cli tracking debug-deviceae-cli tracking debug-dataproject_idAPP_IDhostSERVER_URLmeta.project_idae-cli project info listprojectIdmeta.project_idappId<projectId><appId>appIdmeta.project_idae-cli project info get --project-id <project_id>serverUrlpushUrlpush_urlreceiverUrlpublicUrlpublicReceiverAddressprivateReceiverAddresspublicReceiverAddressprivateReceiverAddresspublicReceiverAddressSERVER_URL<projectId><url>SERVER_URLPUSH_URLae-cli config currentae-cli config set-host <AE_HOST>ae-cli tracking debug-deviceae-cli tracking debug-data.ae-cli/draft.json.ae-cli/draft.xlsxae-generate-tracking-planae-cli tracking code import-template --template.ae-cli/draft.xlsxae-cli tracking code import-template --template.ae-cli/draft.xlsxae-cli tracking code import-template --template <xlsx-path> --out .ae-cli/draft.jsonsdk_integration_modeplatform| Field | Can Infer? | Notes |
|---|---|---|
| Event list | ✅ | From |
| Event property pool | ✅ | From |
| Super properties | ✅ | From |
| User properties | ✅ | From |
| sdk_integration_mode | ⚠️ Limited | xlsx "Platform" column can infer (client/server/both); if missing, must ask |
| client_platforms | ❌ | Must ask user |
| client_platform_languages | ❌ | Must ask user (Android/iOS only) |
| server_language | ❌ | Must ask user (only if sdk_integration_mode includes server) |
| user_identity | ❌ | Must ask user |
| host / project_id | ❌ | Must ask or skip |
客户端clientplatform: "client"服务端serverplatform: "server"客户端,服务端client,server服务端,客户端server,clientplatform: "both"ae-cli tracking code import-template --templateplatformclientserverbothplatform === "client"platform === "both"platform === "server"platform === "both".ae-cli/draft.json.ae-cli/draft.json.ae-cli/draft.xlsxae-generate-tracking-planae-cli tracking code import-template --template.ae-cli/draft.xlsxae-cli tracking code import-template --template.ae-cli/draft.xlsxae-cli tracking code import-template --template <xlsx-path> --out .ae-cli/draft.jsonplatformsdk_integration_mode| 字段 | 是否可推断? | 说明 |
|---|---|---|
| 事件列表 | ✅ | 来自 |
| 事件属性池 | ✅ | 来自 |
| 公共属性 | ✅ | 来自 |
| 用户属性 | ✅ | 来自 |
| sdk_integration_mode | ⚠️ 有限 | 可从xlsx的「Platform」列推断(client/server/both);若缺失则必须询问 |
| client_platforms | ❌ | 必须询问用户 |
| client_platform_languages | ❌ | 必须询问用户(仅Android/iOS) |
| server_language | ❌ | 必须询问用户(仅当sdk_integration_mode包含server时) |
| user_identity | ❌ | 必须询问用户 |
| host / project_id | ❌ | 必须询问或跳过 |
客户端clientplatform: "client"服务端serverplatform: "server"客户端,服务端client,server服务端,客户端server,clientplatform: "both"ae-cli tracking code import-template --templateplatformclientserverbothplatform === "client"platform === "both"platform === "server"platform === "both".ae-cli/draft.json.ae-cli/draft.json.ae-cli/remote-plan.jsonae-cli tracking plan fetch| Integration Mode | Platforms/Sides to Generate |
|---|---|
| 1 client platform (read from plan's |
| 1 server language (read from plan's |
| Client platform + server language (both needed) |
.ae-cli/draft.json.ae-cli/remote-plan.jsonae-cli tracking plan fetch| 集成模式 | 需要生成代码的平台/端 |
|---|---|
| 1个客户端平台(从方案的 |
| 1种服务端语言(从方案的 |
| 客户端平台 + 服务端语言(两者都需要) |
| plan field | Platform | SDK |
|---|---|---|
| Android | Android SDK |
| iOS | iOS SDK |
| OpenHarmony | OpenHarmony SDK |
| Web / H5 | JavaScript SDK |
| Mini-program | Mini-program SDK |
| Unity | Unity SDK |
| Game Engine | Cocos / Laya / Unreal |
| plan field | Language | SDK |
|---|---|---|
| Java | Java SDK |
| Python | Python SDK |
| Go | Go SDK |
| Node.js | Node SDK |
| PHP | PHP SDK |
| C# | C# SDK |
references/sdk-index.mdreferences/sdk-index.md~/.ae-cli/wiki/raw/| 方案字段 | 平台 | SDK |
|---|---|---|
| Android | Android SDK |
| iOS | iOS SDK |
| OpenHarmony | OpenHarmony SDK |
| Web / H5 | JavaScript SDK |
| 小程序 | 小程序SDK |
| Unity | Unity SDK |
| 游戏引擎 | Cocos / Laya / Unreal |
| 方案字段 | 语言 | SDK |
|---|---|---|
| Java | Java SDK |
| Python | Python SDK |
| Go | Go SDK |
| Node.js | Node SDK |
| PHP | PHP SDK |
| C# | C# SDK |
references/sdk-index.mdreferences/sdk-index.md~/.ae-cli/wiki/raw/| Mode | Description | Parameters | Deliverables |
|---|---|---|---|
| insert | Direct Edit injection into user project | Requires project path (absolute) | Code written to target directory |
| snippet | Markdown print + generate code file | No path needed | |
.ae-cli/output/daemon.jsondebug| 模式 | 描述 | 参数 | 交付物 |
|---|---|---|---|
| insert | 直接注入到用户项目中编辑 | 需要项目路径(绝对路径) | 代码写入目标目录 |
| snippet | 打印Markdown并生成代码文件 | 无需路径 | |
.ae-cli/output/daemon.jsondebugae-cli auth login --host <host>
ae-cli auth status
ae-cli tracking plan fetch --project <projectId> --host <host> > .ae-cli/remote-plan.json.ae-cli/draft.jsonae-generate-tracking-planmeta.sdk_integration_modemeta.client_sdk_typeclient_onlybothmeta.server_languageserver_onlybothmeta.user_identitylogin()identify()platforms = {
client: [client_sdk_type] // e.g. ['android'] or ['javascript']
server: [server_language] // e.g. ['java'] or ['python']
}ae-cli auth login --host <host>
ae-cli auth status
ae-cli tracking plan fetch --project <projectId> --host <host> > .ae-cli/remote-plan.json.ae-cli/draft.jsonae-generate-tracking-planmeta.sdk_integration_modemeta.client_sdk_typeclient_onlybothmeta.server_languageserver_onlybothmeta.user_identitylogin()identify()platforms = {
client: [client_sdk_type] // 例如 ['android'] 或 ['javascript']
server: [server_language] // 例如 ['java'] 或 ['python']
}Platforms requiring code generation:
Client:
- android (Android SDK)
Server:
- java (Java SDK, default LoggerConsumer + LogBus2)需要生成代码的平台:
客户端:
- android(Android SDK)
服务端:
- java(Java SDK,默认LoggerConsumer + LogBus2架构)snippet.ae-cli/output/insertsnippetsnippet.ae-cli/output/insertsnippetClient android — choose output mode:
1. insert — requires project path
2. snippet — no path needed, generates code file
Your choice: insert / snippetinsertsnippetServer java — choose output mode:
1. insert — requires project path
2. snippet — no path needed, generates code file
Your choice: insert / snippet
(Defaults included: LoggerConsumer + LogBus2 config + official docs link)insertsnippet.ae-cli/output/daemon.json客户端android — 选择输出模式:
1. insert — 需要项目路径
2. snippet — 无需路径,生成代码文件
你的选择:insert / snippetinsertsnippet服务端java — 选择输出模式:
1. insert — 需要项目路径
2. snippet — 无需路径,生成代码文件
你的选择:insert / snippet
(默认包含:LoggerConsumer + LogBus2配置 + 官方文档链接)insertsnippet.ae-cli/output/daemon.jsonyes.ae-cli/output/te-debug.<ext>no是.ae-cli/output/te-debug.<ext>否Output mode summary:
Client android: snippet
Deliverables: .ae-cli/output/android-sdk.java
Server java: snippet
Deliverables: .ae-cli/output/java-sdk.java
.ae-cli/output/daemon.json
LogBus2 official docs: https://docs-v2.thinkingdata.cn/?version=latest&code=logbus2_installation&lan=en-US
Standalone option: debug
Deliverable: te-debug.java
Confirm? yes / no输出模式摘要:
客户端android:snippet
交付物:.ae-cli/output/android-sdk.java
服务端java:snippet
交付物:.ae-cli/output/java-sdk.java
.ae-cli/output/daemon.json
LogBus2官方文档:https://docs-v2.thinkingdata.cn/?version=latest&code=logbus2_installation&lan=en-US
独立选项:debug
交付物:te-debug.java
确认?是 / 否test -z "$(git status --porcelain)" || echo "uncommitted changes present"snippetdebuginsertUncommitted changes detected. Insert mode requires a clean git workspace.
Choose:
1. Commit / stash first, then tell me and I'll continue with insert
2. Switch to snippet mode for code snippets (re-run skill later for insert)insertsnippettest -z "$(git status --porcelain)" || echo "存在未提交的更改"snippetdebuginsert检测到未提交的更改。insert模式需要干净的git工作区。
请选择:
1. 先提交/暂存更改,然后告知我,我将继续执行insert模式
2. 切换为snippet模式生成代码片段(之后可重新运行技能执行insert)insertsnippetplatform客户端clientplatform: "client"服务端serverplatform: "server"客户端,服务端client,serverplatform: "both"platform === "client"platform === "both"platform === "server"platform === "both"platform === undefined| Output Mode | Execution Flow |
|---|---|
| Read |
| Read |
platform === "client"platform === "both"references/sdk-index.mdthinkingdata-browsertaTDAnalyticste@thinkingdata/web-sdk| Output Mode | Execution Flow |
|---|---|
| Read |
| Read |
platform === "server"platform === "both".ae-cli/output/daemon.jsonreferences/sdk-index.md| Option | Execution Flow |
|---|---|
| Read |
platform客户端clientplatform: "client"服务端serverplatform: "server"客户端,服务端client,serverplatform: "both"platform === "client"platform === "both"platform === "server"platform === "both"platform === undefined| 输出模式 | 执行流程 |
|---|---|
| 读取 |
| 读取 |
platform === "client"platform === "both"references/sdk-index.mdthinkingdata-browsertaTDAnalyticste@thinkingdata/web-sdk| 输出模式 | 执行流程 |
|---|---|
| 读取 |
| 读取 |
platform === "server"platform === "both".ae-cli/output/daemon.jsonreferences/sdk-index.md| 选项 | 执行流程 |
|---|---|
| 读取 |
.ae-cli/output/ae-cli agent +add-attachment --files '<json-array-of-generated-output-files>'.ae-cli/output/.ae-cli/output/daemon.json.ae-cli/output/README.md.ae-cli/output/ae-cli agent +add-attachment --files '<生成输出文件的JSON数组>'.ae-cli/output/.ae-cli/output/daemon.json.ae-cli/output/README.md.java.kt.swift.m.ets.cs.py.go.ts.js.php.jsonae-cli agent +add-attachment.ae-cli/output/.txt.ae-cli/output/java-sdk.java.ae-cli/output/java-sdk.java.txt.ae-cli/output/daemon.json.ae-cli/output/daemon.json.txt.txt.txt.md.txt.csv.txt.ae-cli/output/.java.kt.swift.m.ets.cs.py.go.ts.js.php.jsonae-cli agent +add-attachment.ae-cli/output/.txt.ae-cli/output/java-sdk.java.ae-cli/output/java-sdk.java.txt.ae-cli/output/daemon.json.ae-cli/output/daemon.json.txt.txt.txt.md.txt.csv.txt.ae-cli/output/Deliverables:
Client:
- .ae-cli/output/android-sdk.java (Android SDK code snippet)
Server:
- .ae-cli/output/java-sdk.java (Java SDK LoggerConsumer code)
- .ae-cli/output/daemon.json (LogBus2 configuration)
LogBus2 official docs: https://docs-v2.thinkingdata.cn/?version=latest&code=logbus2_installation&lan=en-US
Standalone:
- .ae-cli/output/te-debug.java (validation script)
README: .ae-cli/output/README.md (usage instructions)
Attachment upload: uploaded generated output files to the file/attachment management entry交付物:
客户端:
- .ae-cli/output/android-sdk.java(Android SDK代码片段)
服务端:
- .ae-cli/output/java-sdk.java(Java SDK LoggerConsumer代码)
- .ae-cli/output/daemon.json(LogBus2配置)
LogBus2官方文档:https://docs-v2.thinkingdata.cn/?version=latest&code=logbus2_installation&lan=en-US
独立选项:
- .ae-cli/output/te-debug.java(校验脚本)
README:.ae-cli/output/README.md(使用说明)
附件上传:已将生成的输出文件上传至文件/附件管理入口Deliverables:
Client android (insert):
- <project-path>/src/main/java/.../TrackingHelper.java (SDK init + event calls)
Server java (snippet):
- .ae-cli/output/java-sdk.java (LoggerConsumer code snippet)
- .ae-cli/output/daemon.json (LogBus2 configuration)
LogBus2 official docs: https://docs-v2.thinkingdata.cn/?version=latest&code=logbus2_installation&lan=en-US
Standalone:
- .ae-cli/output/te-debug.java (validation script)
Attachment upload: uploaded generated output files to the file/attachment management entry交付物:
客户端android(insert):
- <项目路径>/src/main/java/.../TrackingHelper.java(SDK初始化 + 事件调用)
服务端java(snippet):
- .ae-cli/output/java-sdk.java(LoggerConsumer代码片段)
- .ae-cli/output/daemon.json(LogBus2配置)
LogBus2官方文档:https://docs-v2.thinkingdata.cn/?version=latest&code=logbus2_installation&lan=en-US
独立选项:
- .ae-cli/output/te-debug.java(校验脚本)
附件上传:已将生成的输出文件上传至文件/附件管理入口snippetundefinedsnippetundefinedTDAnalytics.init(this, SERVER_URL, APPID);TDAnalytics.init(this, SERVER_URL, APPID);Map<String, Object> superProperties = new HashMap<>();
superProperties.put("channel", "app_store");
TDAnalytics.setSuperProperties(superProperties);Map<String, Object> superProperties = new HashMap<>();
superProperties.put("channel", "app_store");
TDAnalytics.setSuperProperties(superProperties);TDAnalytics.track("user_login", new HashMap<String, Object>() {{
put("login_method", "phone");
}});
---TDAnalytics.track("user_login", new HashMap<String, Object>() {{
put("login_method", "phone");
}});
---Validation steps:
1. Confirm the active AE environment:
ae-cli config current
2. List existing Debug devices:
ae-cli tracking debug-device list --project-id <project_id>
3. Create the script's stable device ID if it is missing, then select it:
ae-cli tracking debug-device add --project-id <project_id> --device-id <device_id> --device-name <name>
ae-cli tracking debug-device select --project-id <project_id> --device-id <device_id>
4. Run validation script:
- Client: run .ae-cli/output/te-debug-client.<ext>
- Server: run .ae-cli/output/te-debug-server.<ext>
5. Query the most recent hour of Debug data:
ae-cli tracking debug-data list --project-id <project_id> --device-id <device_id>
6. Confirm has_data=true, then inspect event names, property structures, and error fields.
If needed, add --event-name <event_name> or --start-time "YYYY-MM-DD HH:mm:ss".
7. Only if the CLI capability is unavailable, open the AE Debug page:
https://<host>/#/data/debug
8. For LogBus2:
- Copy daemon.json to LogBus2 conf/ directory
- Start: ./logbus start
- Official docs: https://docs-v2.thinkingdata.cn/?version=latest&code=logbus2_installation&lan=en-US验证步骤:
1. 确认当前AE环境:
ae-cli config current
2. 列出已有的调试设备:
ae-cli tracking debug-device list --project-id <project_id>
3. 若脚本的稳定设备ID缺失,创建并选择该设备:
ae-cli tracking debug-device add --project-id <project_id> --device-id <device_id> --device-name <name>
ae-cli tracking debug-device select --project-id <project_id> --device-id <device_id>
4. 运行校验脚本:
- 客户端:运行.ae-cli/output/te-debug-client.<ext>
- 服务端:运行.ae-cli/output/te-debug-server.<ext>
5. 查询最近一小时的调试数据:
ae-cli tracking debug-data list --project-id <project_id> --device-id <device_id>
6. 确认has_data=true,然后检查事件名称、属性结构和错误字段。
如有需要,添加--event-name <event_name>或--start-time "YYYY-MM-DD HH:mm:ss"参数。
7. 仅当CLI功能不可用时,打开AE调试页面:
https://<host>/#/data/debug
8. 对于LogBus2:
- 将daemon.json复制到LogBus2的conf/目录
- 启动:./logbus start
- 官方文档:https://docs-v2.thinkingdata.cn/?version=latest&code=logbus2_installation&lan=en-USinsertlogin()identify()insertlogin()identify()insertgit status// @tracking <event>platform === "server"platform === "client"platform === "both"git statusinsert// @tracking <event>platform === "server"platform === "client"platform === "both"references/*.mdreferences/sdk-index.mdreferences/client-sdk-insert.mdreferences/snippet-delivery.mdreferences/server-sdk-insert.mdreferences/logbus-config.mdreferences/debug-script.md~/.ae-cli/wiki/schema.md~/.ae-cli/wiki/raw/~/.ae-cli/wiki/synthesis/references/sdk-index.md~/.ae-cli/wiki/raw/main docreferences/*.mdreferences/sdk-index.mdreferences/client-sdk-insert.mdreferences/snippet-delivery.mdreferences/server-sdk-insert.mdreferences/logbus-config.mdreferences/debug-script.md~/.ae-cli/wiki/schema.md~/.ae-cli/wiki/raw/~/.ae-cli/wiki/synthesis/references/sdk-index.md~/.ae-cli/wiki/raw/main doc