Power Platform CLI (PAC CLI) code 命令 收集有限的遥测数据,以帮助Microsoft提高可靠性、性能和可用性。 本部分介绍收集的内容、其流动方式以及如何控制它。
注释
本节涉及 Power Platform CLI code命令的遥测设置,而非代码应用程序运行时收集的遥测数据。 在此处了解有关 Power Platform CLI 的详细信息: Microsoft Power Platform CLI
为何启用遥测?
启用遥测后,Power Platform CLI 会发送以下信息:
- 活动事件 – 高级作,例如运行命令或完成方案(例如模型和服务文件生成、环境选择)。
- 错误事件 – 失败和异常(命令失败、意外错误),包括错误名称和消息。
- 场景计时 – 关键流的启动/停止时间,用于性能分析的耗时统计。
- 环境上下文 – 有关环境和区域(例如区域、地理、群集)的非 PII 元数据,用于正确路由遥测数据。
- 租户标识符 (可用时) - 如果 CLI 已成功进行身份验证,则会附加当前租户 ID 进行诊断和聚合。
注释
遥测失败不会阻止CLI操作。
切换遥测功能
PAC telemetry 命令可以管理所有 PAC CLI 操作的遥测设置。 这些更改将在多次运行中保持生效。
code 特定于命令的遥测
从 2025 年 12 月发布的 Power Platform CLI 1.51.1 版本开始,您可以管理命令的code遥测数据,而不会影响其他 PAC CLI 命令。
用户可配置的设置存储在 CLI 配置目录中的 userSettings.json JSON 文件,文件名为 .powerapps-cli。
文件 userSettings.json 内容有三个属性:
{
"enabled": true,
"consoleOnly": false,
"outputToConsole": false
}
该 .powerapps-cli 文件夹位于环境变量指定 USERPROFILE 的位置。
可以手动创建此文件或使用以下 PowerShell 脚本:
$settingsPath = Join-Path $env:USERPROFILE ".powerapps-cli\userSettings.json"
$settingsDir = Split-Path $settingsPath
if (-not (Test-Path $settingsDir)) { New-Item -ItemType Directory -Path $settingsDir -Force }
$settings = @{
enabled = $true
consoleOnly = $false
outputToConsole = $false
}
$settings | ConvertTo-Json | Set-Content $settingsPath
下表描述了这些布尔属性的用途:
| 资产 | Description |
|---|---|
enabled |
是否启用远程遥测。 |
consoleOnly |
是否仅将遥测数据记录到控制台,并且永远不会远程发送。 |
outputToConsole |
是否将遥测事件额外镜像到控制台。 |
注释
如果使用PAC telemetry命令全局禁用了 PAC CLI 的遥测功能,则即使为code命令启用了遥测,code命令也不会发送遥测数据。
下列部分描述了有效的值组合及其结果:
已启用遥测,仅限远程访问(默认值)
如果不存在userSettings.json文件,则这是系统的行为。
不会向控制台打印任何遥测数据。
{
"enabled": true,
"consoleOnly": false,
"outputToConsole": false
}
完全禁用遥测
{
"enabled": false,
"consoleOnly": false,
"outputToConsole": false
}
如果仍要查看事件,请将outputToConsole 设置为 true。
已启用遥测、远程 + 控制台
事件是远程发送的。 相同事件也会在本地打印输出。
{
"enabled": true,
"consoleOnly": false,
"outputToConsole": true
}
控制台专用遥测(不支持远程发送)
如果 consoleOnly 为 true,则仅使用控制台日志记录。 不会在外部发送遥测数据,所有内容都保留在终端中。
{
"enabled": false,
"consoleOnly": true,
"outputToConsole": false
}
-
enabled在远程发送时通常会被忽略。 -
outputToConsole不是必需的, 因为控制台日志记录是自带的。
将遥测数据重定向到文件
当遥测配置为输出到控制台(使用 consoleOnly: true 或 outputToConsole: true)时,可以将输出重定向到文件。 这对于捕获日志以调试或支持请求特别有用。
Windows 命令提示符
使用>运算符重定向stdout和2>&1,必要时包括stderr。
pac code add-data-source .... > telemetry.log 2>&1
PowerShell(Windows、macOS、Linux)
使用 Out-File cmdlet 或重定向运算符。
pac code add-data-source .... | Out-File -FilePath telemetry.log -Encoding utf8