Skip to content

add doc around dashboard telemetry #2846

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Merged
merged 8 commits into from
May 8, 2025
Merged
Show file tree
Hide file tree
Changes from 5 commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Can you get an even larger image? If so, that should be used as the lightbox. Right now, using the same image in this situation doesn't make sense as when you select it, it's not larger than the one currently rendered. Also, we've been defaulting to using the dark theme for docs.

Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I can, but on second thought, I'm not sure this image is necessary to include at all. What's your opinion? In the meantime, I removed it.

Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
49 changes: 49 additions & 0 deletions docs/fundamentals/dashboard/usage-telemetry.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,49 @@
---
title: .NET Aspire dashboard telemetry
description: Learn about what telemetry the .NET Aspire dashboard sends and how to opt out.
ms.date: 03/05/2025
---

# .NET Aspire dashboard telemetry
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

What do you think about this for the title instead?

Suggested change
# .NET Aspire dashboard telemetry
# Microsoft collected dashboard telemetry

".NET Aspire telemetry" is now officially an oxymoron; in that it has two contradictory meanings. Before 9.2, the dashboard was all about display resource telemetry, obviously we all know that, but now, we're saying ".NET Aspire telemetry" in this article is about the data Microsoft collects to improve the dashboard experience.

Or perhaps something like ".NET Aspire dashboard usage telemetry"?

Copy link
Member Author

@adamint adamint Mar 25, 2025

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Microsoft-collected dashboard telemetry works for me!


The Aspire dashboard includes a telemetry feature that collects usage data when the dashboard is launched through Visual Studio or Visual Studio Code as part of a running Aspire application. This information is sent to Microsoft to help the Aspire team understand how the dashboard is used and help improve the product. Exception information is also sent when unhandled exceptions occur in the dashboard.

## Scope

.NET Aspire dashboard usage telemetry is supported when using Visual Studio or Visual Studio Code to run an Aspire application containing a dashboard resource.

Telemetry is collected only when the Aspire dashboard is open in the browser and the instance of Visual Studio or Visual Studio Code has not opted out of telemetry collection.

## How to opt out

.NET Aspire dashboard telemetry is enabled by default for `Aspire >= 9.2` when launched through Visual Studio `>= 17.14` or C# Dev Kit `>= [VSC RELEASE VERSION]`.

To opt out, you may either:

- Set the `DOTNET_DASHBOARD_ENABLE_TELEMETRY` environment variable to `false`. This will apply to all users accessing the Aspire dashboard.
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Could a user alternatively set an AppContext switch?

AppContext.SetSwitch("DOTNET_DASHBOARD_ENABLE_TELEMETRY", true);

Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Not currently. That pattern is not currently supported for any dashboard configuration option, so it needs further discussion. @davidfowl how do you feel about supporting switches?

- Disable telemetry collection in the host IDE.
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

How does one disable telemetry collection in the host IDE?

Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

added links for VSC and VS


## Disclosure

If dashboard telemetry is enabled, there will be a disclosure statement at the bottom of the settings panel informing that telemetry is enabled. This statement will appear any time telemetry collection is enabled.

:::image type="content" source="media/explore/dashboard-settings-drawer.png" lightbox="media/explore/dashboard-settings-drawer.png" alt-text="A screenshot of the .NET Aspire dashboard settings drawer.":::

## Data points

Aspire dashboard telemetry does not collect personal data like IP addresses or use browser fingerprinting. It does not scan your code and does not extract source code, authorship, or deployment configuration. The data is sent securely to Microsoft using [https://azure.microsoft.com/services/monitor/](Azure Monitor) through existing telemetry APIs in Visual Studio and Visual Studio Code.

Protecting your privacy is important to us. If you suspect that telemetry is collecting sensitive data or the data is being insecurely or inappropriately handled, file an issue in the [dotnet/aspire](https://github.com/dotnet/aspire) repository for investigation.

The Aspire dashboard does not collect telemetry on Visual Studio versions `< 17.14` or C# Dev Kit versions `< [VSC RELEASE VERSION`. It collects the following data:
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Suggested change
The Aspire dashboard does not collect telemetry on Visual Studio versions `< 17.14` or C# Dev Kit versions `< [VSC RELEASE VERSION`. It collects the following data:
The .NET Aspire dashboard doesn't collect telemetry on Visual Studio versions `< 17.14` or C# Dev Kit versions `< [VSC RELEASE VERSION]`. It collects the following data:


| Aspire dashboard versions | Data | Notes |
|--------------|------|------|
| 9.2 | Page navigation history. | Includes page settings. |
| 9.3 | Resource types being used. | |
| 9.3 | Request user agent. | |
| 9.3 | Invoked dashboard commands. | Command name is securely hashed. |
| 9.3 | Request language and set dashboard language. | |
| 9.3 | Resource restart times. | |
| 9.3 | OTel data processing times. | |
| 9.3 | Dashboard-related unhandled exceptions. | |
Loading