次の方法で共有


方法: Power Platform CLI コード コマンドのテレメトリ設定を管理する

Power Platform CLI (PAC CLI) code コマンド は、Microsoft が信頼性、パフォーマンス、使いやすさを向上させるために役立つ限られたテレメトリを収集します。 このセクションでは、収集される内容、収集方法、および制御方法について説明します。

このセクションでは、コード アプリの再生時に収集されるテレメトリではなく、Power Platform CLI code コマンドのテレメトリ設定について説明します。 Power Platform CLI の詳細については、以下をご覧ください。 Microsoft Power Platform CLI

テレメトリを有効にする理由

テレメトリが有効になっている場合、Power Platform CLI は次の情報を送信します。

  • アクティビティ イベント – コマンドの実行やシナリオの完了などの高度なアクション (モデルとサービス ファイルの生成、環境の選択など)。
  • エラー イベント – エラー名やメッセージを含むエラーと例外 (コマンドエラー、予期しないエラー)。
  • シナリオのタイミング – パフォーマンス分析の経過時間を使用して、主要なフローの開始/停止を行います。
  • 環境コンテキスト – テレメトリを正しくルーティングするために使用される、環境とリージョン (リージョン、geo、クラスターなど) に関する PII 以外のメタデータ。
  • テナント識別子 (使用可能な場合) – CLI が正常に認証されると、現在のテナント ID が診断と集計のためにアタッチされます。

テレメトリエラーによって CLI 操作がブロックされることはありません。

テレメトリの切り替え

PAC telemetry コマンドを使用すると、すべての PAC CLI 操作のテレメトリ設定を管理できます。 これらの変更は、実行間で保持されます。

code コマンド固有のテレメトリ

2025 年 12 月にリリースされた Power Platform CLI のバージョン 1.51.1 以降では、他の PAC CLI コマンドに影響を与えることなく、 code コマンドのテレメトリを管理できます。

ユーザーが構成可能な設定は、userSettings.jsonという名前の CLI 構成ディレクトリの下にある.powerapps-cli JSON ファイルに格納されます。

userSettings.json ファイルの内容には、次の 3 つのプロパティがあります。

{
  "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
}

イベントを表示する場合は、 outputToConsoletrue に設定します。

テレメトリが有効、リモート + コンソール

イベントはリモートで送信されます。 同じイベントもローカルで出力されます。

{
  "enabled": true,
  "consoleOnly": false,
  "outputToConsole": true
}

コンソールのみのテレメトリ (リモート送信なし)

consoleOnlyが true の場合、コンソール ログのみが使用されます。 テレメトリは外部に送信されません。すべてがターミナルにとどまります。

{
  "enabled": false,
  "consoleOnly": true,
  "outputToConsole": false
}
  • enabled は、リモート送信では事実上無視されます。
  • outputToConsole は必須ではありません。コンソール ログは暗黙的に示されます。

ファイルへのテレメトリのパイプ処理

( consoleOnly: true または outputToConsole: trueを使用して) コンソールに出力するようにテレメトリが構成されている場合は、出力をファイルにリダイレクトできます。 これは、デバッグ要求またはサポート要求のログをキャプチャする場合に特に便利です。

Windows コマンド プロンプト

>演算子を使用して、必要に応じてstdoutを含める2>&1stderrをリダイレクトします。

pac code add-data-source .... > telemetry.log 2>&1

PowerShell (Windows、macOS、Linux)

Out-File コマンドレットまたはリダイレクト演算子を使用します。

pac code add-data-source .... | Out-File -FilePath telemetry.log -Encoding utf8