Visual Studio activity dataとは?サブスクリプション連携時の収集内容とプライバシー設定

Visual Studio EnterpriseなどのサブスクリプションをMicrosoftの開発者アカウント(例:Microsoft 365 Developer Programのダッシュボード)にリンクする際、「Visual Studio activity data(アクティビティ データ)」という言葉が出てきて不安になることがあります。この記事では、activity dataが指す範囲と、収集・利用のイメージ、そして自分でできる確認・制御ポイントをまとめます。

目次

Visual Studio サブスクリプション連携で表示される「activity data」とは

リンク手続きの途中で、次のような趣旨の文言が表示されることがあります。

By linking your account, you authorize Microsoft to use your Visual Studio activity data as a measure of developer activity.

この「Visual Studio activity data」は、言葉だけ見ると“サブスクで入手できる製品全部(Windowsなど)”の利用履歴まで吸い上げられるように感じますが、実際の意味合いはもう少し限定的です。

結論:activity dataは「サインイン状態のVisual Studio IDE」の利用・診断テレメトリが中心

Microsoft Q&A(モデレーター回答)では、activity dataはサインインして利用したVisual Studio IDEからの利用状況・性能指標や診断データであり、サブスク経由で入手したOSや他ソフトのテレメトリまでを同じ括りで収集するものではない、という整理が示されています。

さらに、Visual Studio自体の「Visual Studio Experience Improvement Program(VSCEIP)」の説明でも、クラッシュや無応答、高CPU/メモリなどの問題を改善するために、スタックトレースや必要に応じたメモリダンプ、例外情報などのシステム生成ログを収集することが明記されています。つまり、activity dataの“実体”は、Visual Studioが品質改善や診断のために持つテレメトリ(特にサインイン利用に紐づくデータ)を、開発者アクティビティの指標として利用する、という位置づけと捉えるのが自然です。

よくある疑問結論ポイント
IDEの利用状況だけが対象?基本的にYesサインイン状態のVisual Studio IDEの利用・性能・診断データが中心
サブスクで入手したWindows等まで全部?NoOSや他製品のテレメトリは別体系で、activity dataに含めて一体収集する趣旨ではない
VS Codeも同じ?原則別扱い回答では「Visual Studio IDEに限定」とされ、VS Codeのテレメトリは別枠と説明されている
インストール不具合などのログは?状況によりVSCEIPの説明でも「インストール中・利用中のエラー情報」を収集し得る。問題報告ではセットアップログが添付される場合もある

なぜ「開発者アクティビティの指標」が必要になるのか

この同意文が登場しやすい場面として、Microsoft 365 Developer Program(E5開発者サブスクリプション)のダッシュボードでVisual Studio サブスクリプションとリンクするケースがあります。Microsoft Learnの案内では、すでにMicrosoft 365開発者サブスクリプションをセットアップしている場合でも、ダッシュボード上から「Visual Studio サブスクリプションとリンク」でき、リンクするとVisual Studio サブスクリプションが有効な限り自動更新されると説明されています。

一方で、Developer Program側のFAQでは、E5開発者サブスクリプションは通常「最大90日」で、開発アクティビティに基づき更新される仕組みであること、更新可否の判断にDeveloper ProgramとE5サブスクリプション上の活動に関するアルゴリズムとテレメトリを用いることが明記されています。つまり、Developer Programは“本当に開発に使っているか”を何らかのシグナルで判定する設計です。

こうした仕組みを踏まえると、リンク画面で出てくる同意文は「Visual Studio IDEの利用・診断に関するactivity dataを、Developer Programにおける開発者アクティビティのシグナルとして参照してよい」という意味合いだと理解すると整理しやすいです。なお、Visual Studioサブスク保有者が自動更新の対象であること自体も、Developer ProgramのページやFAQで案内されています。

activity data に含まれうるデータの具体像

activity dataは“何でもかんでも”ではなく、概ね次の3系統に分けて理解すると整理しやすいです。

利用状況・性能(Usage & Performance Metrics)

「どんな機能が、どれくらい、どの環境で使われたか」「動作が遅い・重いなどの傾向はあるか」といった、製品改善のための指標が中心です。モデレーター回答の例では、日付、製品バージョン、実行した操作や頻度、端末・環境情報(プラットフォームや互換性分析用のハードウェア情報など)が挙げられています。

  • 利用日・製品バージョン(例:Visual Studio 2022など)
  • 操作イベントと頻度(例:ソリューション読み込みなど)
  • パフォーマンス関連イベント(応答性・リソース利用の傾向など)
  • 環境情報(OS種別、プラットフォーム、互換性確認のためのハードウェア情報など)

エラー・診断(System-generated logs / Diagnostic Data)

Visual Studioは品質改善のため、クラッシュ、UI無応答、高CPU/メモリ使用、インストール不具合などに関するシステム生成ログを収集し得ます。必要に応じて、関連スレッドのスタックトレース、メモリダンプ、例外情報(例外名・スタックトレース・メッセージなど)が含まれる場合がある、と説明されています。

  • クラッシュ、無応答、高CPU/メモリ、インストール中/利用中のエラーに関するログ
  • スタックトレース(どの処理で詰まったかの手がかり)
  • 状況によってはメモリダンプ(エラー時点のプロセス状態)
  • 例外情報(例外名、スタックトレース、メッセージなど)

その他の文脈情報(Contextual Data)

機能や状況によって、ネットワーク診断や地域推定などの目的でIPアドレスが扱われる場合がある、入力方法や検索語句などが該当機能に紐づいて取得され得る、といった補足もあります(ただし常に入るとは限らない、という位置づけ)。

カテゴリ具体例主な目的利用者ができること
利用状況・性能利用日、バージョン、操作頻度、環境情報など機能改善、品質の優先順位付け、互換性検証VSCEIPの参加/不参加を設定(Help > Privacy)
診断/障害情報クラッシュ/無応答ログ、スタックトレース、メモリダンプ、例外情報原因解析、安定性改善、インストール/実行時トラブル対応オプション診断の停止、問題報告時に添付物を確認・調整
文脈情報IPアドレス(診断や地域推定目的)、検索語句など(機能次第)ネットワーク診断、機能改善のための補助情報機能ごとの設定確認(組織ポリシー含む)

「含まれない」と考えてよいものと、気をつけたい例外

プライバシーの観点で多い心配が「ソースコード本文が送られるのでは?」という点です。少なくとも、Visual Studioの機能の一例であるIntelliCodeのテレメトリ説明では、ユーザー定義のコードはMicrosoftに送信しないことが明記されつつ、利用状況・エラー報告の匿名化データは収集すると説明されています。

ただし、ここで安心して終わりではなく、現実的には次のような“周辺情報”がログに入り得ます。ソースコードそのものを送らなくても、例外メッセージやスタックトレース、ファイルパス、ウィンドウタイトル、拡張機能が出力したログなどに、個人名や社内プロジェクト名、接続先のホスト名が混ざるケースはゼロではありません。VSCEIPのページでも、ログが「システム生成」であり、拡張機能作者向けに“個人情報や機密情報を不用意に含めないための注意”を促す趣旨が示されています。

不安になりやすいポイント基本スタンス注意したい例外(起き得る)実務的な対策
ソースコード本文原則として送信しない設計の説明がある(機能によって明記)例外情報に含まれる文字列やパス、拡張機能ログに断片が混入機密情報を例外メッセージ等に埋め込まない、拡張機能のログ設定も見直す
メモリダンプ原因特定に必要な場合に収集され得るプロセス状態のスナップショットのため、状況によっては文字列や一時データが含まれる可能性オプション診断データの送信を停止、問題報告時は添付物を確認してから送信
問題報告(Report a Problem)「送信」はユーザーがSubmitしたとき添付ログやスクリーンショットは内容次第で情報量が多いSummary画面で添付物を確認し、不要なら「Attach system logs」を外す

2つの不安にそのまま答える

不安①:サブスクリプション アカウントでサインインして使ったVisual Studio本体(IDE)の利用状況だけが対象?
→ 基本的にその理解で問題ありません。モデレーター回答では、activity dataは「サインイン利用のVisual Studio IDEに限定」される旨が説明されています。

不安②:サブスクから入手した他のソフト(Windowsなど)全体の利用データまで収集される?
→ その趣旨ではありません。回答では「他のソフトやOS(例:Windowsのエディション)」のテレメトリはactivity dataに含まれない、と明確に切り分けています。もちろんWindows等にはWindows側のテレメトリが別途存在し得ますが、“今回の同意で一括して紐づける”という話ではない、という整理です。

自分で確認・制御するためのチェックリスト(Visual Studio側)

「activity dataが何か」は分かっても、実際にどこで止められるのか、どこまでが止まるのかが次の疑問になります。まず押さえるべきは、Visual StudioのVSCEIP(任意の診断データ収集)と、問題報告(Report a Problem)が別物だという点です。

Help > Privacy でVSCEIPの参加/不参加を切り替える

VSCEIPは既定でオンで、Visual StudioのメニューからHelp > Privacy > Privacy Settingsを開き、「参加しない」を選択してオプトアウトできます。

ここで重要なのは、VSCEIPをオプトアウトしても、必要な診断データ(Required diagnostic data)は影響を受けないと明記されている点です。つまり「完全にゼロにするスイッチ」ではなく、任意の収集を止める設定です。

Build Toolsや組織PCではレジストリ/ポリシーで管理されることがある

Build Tools for Visual Studioを導入している場合など、UIではなくレジストリで設定するケースがあること、企業ではグループポリシー(レジストリベースのポリシー)で制御できることが案内されています。

対象キー値意味
64-bit OSHKEY_LOCAL_MACHINE\SOFTWARE\Wow6432Node\Microsoft\VSCommon\17.0\SQMOptIn (DWORD) = 0/10: オプトアウト / 1: オプトイン
32-bit OSHKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\VSCommon\17.0\SQMOptIn (DWORD) = 0/10: オプトアウト / 1: オプトイン
Group Policy有効時HKEY_LOCAL_MACHINE\Software\Policies\Microsoft\VisualStudio\SQMOptIn (DWORD) = 0/1組織で強制する設定

問題報告(Report a Problem)とDeveloper Communityは別の“送信”経路

VSCEIPの設定はReport a Problemには適用されないことが明記されています。Report a Problemは、ユーザーが問題を報告するときにログを収集し、Submitを押したときだけMicrosoftへ送信される仕組みです。

Developer Community側のプライバシー案内では、送信前に「Summary」ステップで添付されるファイルを確認できること、必要なら「Attach system logs」のチェックを外してシステムログを除外できることが説明されています。トラブル解決のためにログは有効ですが、社内環境や個人情報が混ざり得るなら、送信前確認は必須です。

また、Developer Communityに投稿した問題報告は、既定では公開される(=誰でも閲覧できる)点も重要です。公開範囲を限定できる導線もあるため、組織のルールが厳しい場合は投稿前に公開範囲を必ず確認しましょう。

自分のデータを確認・エクスポート・削除したい場合(DSR)

「実際にどんな個人データが紐づいているのか確認したい」「削除できるなら削除したい」という場合は、データ主体要求(DSR: Data Subject Request)の導線を把握しておくと安心です。

Microsoft Learnには、Visual Studio/Visual Studio for Mac(サポート終了の範囲を含む)やMicrosoft拡張機能に関して、サインイン(認証)利用中に収集される個人データのエクスポート/削除に関するガイドが用意されています。加えて、NuGet.orgやDeveloper Communityなど関連サービスのDSRについても触れられています。

なお、非Microsoft製ツールや拡張機能についてはMicrosoftが管理者(処理者/管理者)ではないため、個別の提供者に確認してほしい、という注意もあります。Visual Studioに拡張機能を多く入れている環境ほど、この切り分けが重要になります。

よくある質問(混同しがちなポイント)

Q. 「activity dataに同意」すると、Visual Studio側の送信設定も勝手にオンになりますか?
A. 連携画面の同意は、Developer Program側で「Visual Studio activity dataを開発者アクティビティの指標として利用する」ことへの許可です。どれだけのデータが送られるかは、Visual Studio側のVSCEIP設定や組織ポリシー、さらに問題報告(Report a Problem)で何を添付して送ったか、といった要素でも変わるため、まずはVisual Studio側のプライバシー設定を確認するのが安全です。

Q. VSCEIPをオプトアウトすれば、診断データは一切送られませんか?
A. VSCEIPのオプトアウトは「任意の診断データ」を止めるものですが、必要な診断データは影響を受けないと明記されています。また、Report a Problemは別経路で、Submitしたときに送信されます。

Q. 会社のPCで設定が見当たりません。
A. 組織環境では、グループポリシー(レジストリベースのポリシー)でVSCEIPが制御されるケースがあります。個人で変更できない場合は、情報システム部門のポリシーを確認してください。

Q. “Visual Studioサブスク”と“Visual Studio IDE”が同じものに見えて混乱します。
A. サブスクリプションはライセンスと特典(ダウンロード、Azureクレジット、各種サブスク特典など)の枠組みで、activity dataの中心はIDEの利用・診断テレメトリです。サブスクで入手した他製品の利用データまでまとめて収集する趣旨ではない、と明確に切り分けられています。

まとめ

Visual Studio サブスクリプションを開発者アカウントにリンクしたときに出る「Visual Studio activity data」は、基本的にサインイン状態のVisual Studio IDEの利用状況・性能指標・診断ログ(クラッシュ/無応答/高CPUなど)を指し、サブスクから入手したWindows等の別製品テレメトリまでを一体で収集するものではない、という理解が最も実務的です。

不安が残る場合は、(1) Visual StudioのPrivacy設定(VSCEIP)を確認、(2) 問題報告時の添付物を送信前に確認、(3) 必要ならDSRの導線を把握、の3点を押さえることで、過剰に怖がらずに“自分でコントロールできる状態”に近づけます。

この記事を書いた人

実務の現場で詰まりがちなポイントを地図にするITブログ「IT trip」を運営。Windows/Office(Teams・Excel)からSQL、サーバ運用、ガジェットまで、再現性のある手順と“なぜそうなるか”を丁寧に解説します。読んだらすぐ試せること、そして迷った人の次の一歩が見えることを大切にしています。

コメント

コメントする

目次