.NET Core SDK 製品利用統計情報.NET Core SDK telemetry

.NET Core SDK には、利用情報を収集する製品利用統計情報機能があります。The .NET Core SDK includes a telemetry feature that collects usage information. このツールがどのように利用されているかを .NET Team が理解することが重要です。それにより、ツールを改善できます。It's important that the .NET Team understands how the tools are used so they can be improved. 詳細については、「What we've learned from .NET Core SDK Telemetry」 (.NET Core SDK 製品利用統計情報からわかったこと) を参照してください。For more information, see What we've learned from .NET Core SDK Telemetry.

収集されたデータは匿名で、Creative Commons Attribution License の下で、Microsoft とコミュニティの両者が利用するために集計された形で公開されます。The collected data is anonymous and published in an aggregated form for use by both Microsoft and the community under the Creative Commons Attribution License.

スコープScope

dotnet コマンドは、アプリと .NET Core CLI の両方の起動に使用されます。The dotnet command is used to launch both apps and the .NET Core CLI. dotnet コマンド自体は製品利用統計情報を収集しません。The dotnet command itself doesn't collect telemetry. dotnet コマンドで実行される .NET Core CLI コマンドが製品利用統計情報を収集します。The .NET Core CLI commands run by the dotnet command collect the telemetry.

コマンドを添付せずに dotnet コマンドそのものを使うと、製品利用統計情報は有効になりませんTelemetry isn't enabled when using the dotnet command itself, with no command attached:

  • dotnet
  • dotnet [path-to-app]

次のような .NET Core CLI コマンドを使用すると、製品利用統計情報が有効になりますTelemetry is enabled when using the .NET Core CLI commands, such as:

  • dotnet build
  • dotnet pack
  • dotnet restore
  • dotnet run

オプトアウトする方法How to opt out

.NET Core SDK の製品利用統計情報機能は既定では有効になっています。The .NET Core SDK telemetry feature is enabled by default. DOTNET_CLI_TELEMETRY_OPTOUT 環境変数を 1 または true に設定して、製品利用統計情報の機能をオプトアウトします。Opt out of the telemetry feature by setting the DOTNET_CLI_TELEMETRY_OPTOUT environment variable to 1 or true.

データ ポイントData points

この機能は次のデータを収集します。The feature collects the following data:

  • 呼び出しのタイムスタンプ†Timestamp of invocation†
  • 呼び出されたコマンド ("build" など)†Command invoked (for example, "build")†
  • 地理的な場所を決定するために使用する 3 つのオクテットの IP アドレス†Three octet IP address used to determine geographical location†
  • コマンドの ExitCodeExitCode of the command
  • (テスト プロジェクトの) テスト ランナーTest runner (for test projects)
  • オペレーティング システムとバージョン†Operating system and version†
  • ランタイム ノードにランタイム ID が存在するかどうかWhether runtime IDs are present in the runtimes node
  • .NET Core SDK バージョン†.NET Core SDK version†

† このメトリックは公開されています。†This metric is published.

.NET Core 2.0 SDK 以降、新しいデータ ポイントが収集されます。Starting with .NET Core 2.0 SDK, new data points are collected:

  • dotnet コマンドの引数とオプション: (任意の文字列ではなく) 既知の引数とオプションのみが収集されます。dotnet command arguments and options: only known arguments and options are collected (not arbitrary strings).
  • SDK がコンテナーで実行されているかどうか。Whether the SDK is running in a container.
  • ターゲット フレームワーク。Target frameworks.
  • ハッシュされた MAC アドレス: 暗号化の面で (SHA256) 匿名であり、マシンの一意の ID。Hashed MAC address: a cryptographically (SHA256) anonymous and unique ID for a machine. このメトリックは公開されていません。This metric isn't published.
  • ハッシュされた現在の作業ディレクトリ。Hashed current working directory.

この機能では、ユーザー名やメール アドレスなどの個人データは収集されません。The feature doesn't collect personal data, such as usernames or email addresses. コードはスキャンされず、名前、リポジトリ、作成者などのプロジェクト レベルの機密データは抽出されません。It doesn't scan your code and doesn't extract sensitive project-level data, such as name, repo, or author. データは Microsoft Azure Application Insights テクノロジを使用して Microsoft サーバーに安全に送信され、制限されたアクセスの下で保持され、厳格なセキュリティ コントロールの下で安全な Azure Storage システムから公開されます。The data is sent securely to Microsoft servers using Microsoft Azure Application Insights technology, held under restricted access, and published under strict security controls from secure Azure Storage systems.

.NET チームは、ツールで構築しているものではなく、ツールがどのように使われ、問題なく機能しているかどうかを知る必要があります。The .NET team wants to know how the tools are used and if they're working well, not what you're building with the tools. 利用統計情報で機密情報が収集されているのではないか、データがセキュリティ上問題がある、不適切な方法で処理されているのではないかという疑いがある場合は、調査のために dotnet/cli リポジトリで問題を提起してください。If you suspect that the telemetry is collecting sensitive data or that the data is being insecurely or inappropriately handled, file an issue in the dotnet/cli repository for investigation.

公開データPublished data

公開データは四半期ごとに利用可能で、「.NET Core SDK Usage Data」 (.NET core SDK の使用状況データ) に一覧表示されます。Published data is available quarterly and are listed at .NET Core SDK Usage Data. データ ファイルの列は次のとおりです。The columns of a data file are:

  • TimestampTimestamp
  • Occurrences†Occurrences†
  • コマンドCommand
  • Geography‡Geography‡
  • OSFamilyOSFamily
  • RuntimeIDRuntimeID
  • OSVersionOSVersion
  • SDKVersionSDKVersion

Occurrences 列には、その行のメトリックに対するコマンドの使用回数の、その日の合計数が表示されます。†The Occurrences column displays the aggregate count of that command's use for that row's metrics that day.

‡ 通常、Geography 列には、国/地域の名前が表示されます。‡Typically, the Geography column displays the name of a country/region. 場合によっては、調査担当者が南極や不正な場所データを使用して .NET Core を使用していることが原因で、この列に南極大陸が表示されることがあります。In some cases, the continent of Antarctica appears in this column, either due to researchers using .NET Core in Antarctica or incorrect location data.

Example

TimestampTimestamp OccurrencesOccurrences コマンドCommand GeographyGeography OSFamilyOSFamily RuntimeIDRuntimeID OSVersionOSVersion SDKVersionSDKVersion
4/16/2017 0:004/16/2017 0:00 88 実行run UgandaUganda DarwinDarwin osx.10.12-x64osx.10.12-x64 10.1210.12 1.0.11.0.1

データセットDatasets

追加のデータセットは、標準の URL 形式を使用してポストされます。Additional datasets are posted using a standard URL format. <YEAR> を年で置き換え、<QUARTER> を四半期に置き換えます (123、 または 4 を使用)。Replace <YEAR> with the year and replace <QUARTER> with the quarter of the year (use 1, 2, 3, or 4). ファイルはタブ区切り値 (TSV) 形式です。The files are in tab-separated values (TSV) format.

https://dotnetcli.blob.core.windows.net/usagedata/dotnet-cli-usage-<YEAR>-q<QUARTER>.tsv

ライセンスLicense

Microsoft による .NET Core の配信は、マイクロソフト ソフトウェア ライセンス条項:Mirosoft .NET ライブラリを利用して、ライセンス供与されます。The Microsoft distribution of .NET Core is licensed with the Microsoft Software License Terms: Mirosoft .NET Library. データの収集と処理について詳しくは、タイトルに「データ」と付くセクションをご覧ください。For details on data collection and processing, see the section entitled "Data."

.NET NuGet パッケージは同じライセンスを使用しますが、製品利用統計情報を有効にしません (「スコープ」を参照)。.NET NuGet packages use the same license but don't enable telemetry (see Scope).

開示Disclosure

いずれかの .NET Core CLI コマンド (dotnet restore など) をはじめて実行するときに、.NET Core SDK では次のテキストが表示されます。The .NET Core SDK displays the following text when you first run one of the .NET Core CLI commands (for example, dotnet restore). テキストは、実行している SDK のバージョンによって多少異なります。Text may vary slightly depending on the version of the SDK you're running. この "最初の実行" の際に、Microsoft がデータ回収に関して通知する方法が示されます。This "first run" experience is how Microsoft notifies you about data collection.

Welcome to .NET Core!
---------------------
Learn more about .NET Core: https://aka.ms/dotnet-docs
Use 'dotnet --help' to see available commands or visit: https://aka.ms/dotnet-cli-docs

Telemetry
---------
The .NET Core tools collect usage data in order to help us improve your experience.
The data is anonymous and doesn't include command-line arguments.
The data is collected by Microsoft and shared with the community.
You can opt-out of telemetry by setting the DOTNET_CLI_TELEMETRY_OPTOUT environment variable to '1' or 'true' using your favorite shell.

Read more about .NET Core CLI Tools telemetry: https://aka.ms/dotnet-cli-telemetry

関連項目See also