Skip to content

Commit 525450c

Browse files
authored
Telemetry article for dotnet-scaffold CLI tool (#34067)
1 parent 335faad commit 525450c

File tree

2 files changed

+72
-0
lines changed

2 files changed

+72
-0
lines changed
Lines changed: 70 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,70 @@
1+
---
2+
title: dotnet-scaffold telemetry
3+
author: tdykstra
4+
description: Learn about the telemetry collected by the dotnet-scaffold CLI tool.
5+
monikerRange: '>= aspnetcore-8.0'
6+
ms.author: tdykstra
7+
ms.date: 11/06/2024
8+
uid: fundamentals/dotnet-scaffold-telemetry
9+
---
10+
# dotnet-scaffold telemetry
11+
12+
The `dotnet-scaffold` command includes a telemetry feature that collects usage data. This feature helps the `dotnet-scaffold` team understand how the tool is used so it can be improved.
13+
14+
## How to opt out
15+
16+
The `dotnet-scaffold` telemetry feature is enabled by default. To opt out of the telemetry feature, set the `DOTNET_SCAFFOLD_TELEMETRY_OPTOUT` environment variable to `1` or `true`.
17+
18+
## Disclosure
19+
20+
When you run the `dotnet-scaffold` tool the first time, it displays output similar to the following example. The text may vary slightly depending on the version of the tool you're running. This "first run" experience is how Microsoft notifies you about data collection.
21+
22+
```console
23+
dotnet-scaffold collects usage data in order to help us improve your experience. The data is collected by Microsoft and shared with the community. You can opt-out of telemetry by setting the DOTNET_SCAFFOLD_TELEMETRY_OPTOUT environment variable to '1' or 'true' using your favorite shell.
24+
25+
Read more about dotnet-scaffold telemetry:
26+
https://aka.ms/dotnet-scaffold/telemetry
27+
Read more about .NET CLI Tools telemetry:
28+
https://aka.ms/dotnet-cli-telemetry
29+
```
30+
31+
To suppress the "first run" experience text, set the `DOTNET_SCAFFOLD_SKIP_FIRST_TIME_EXPERIENCE` environment variable to `1` or `true`.
32+
33+
## Data points
34+
35+
The telemetry feature doesn't collect:
36+
37+
* Personal data, such as usernames, email addresses, or URLs.
38+
* Any project data.
39+
40+
The data is sent securely to Microsoft servers and held under restricted access.
41+
42+
Protecting your privacy is important to us. If you suspect the telemetry feature is collecting sensitive data or the data is being insecurely or inappropriately handled, take one of the following actions:
43+
44+
* File an issue in the [dotnet/scaffolding](https://github.com/dotnet/scaffolding/issues) repository.
45+
* Send an email to [[email protected]](mailto:[email protected]) for investigation.
46+
47+
The telemetry feature collects the following data.
48+
49+
| .NET SDK versions | Data |
50+
|--------------|------|
51+
| >=8.0 | Timestamp of invocation. |
52+
| >=8.0 | Three-octet IP address used to determine the geographical location. |
53+
| >=8.0 | Operating system and version. |
54+
| >=8.0 | Runtime ID (RID) the tool is running on. |
55+
| >=8.0 | Whether the tool is running in a container. |
56+
| >=8.0 | Hashed Media Access Control (MAC) address: a cryptographically (SHA256) hashed and unique ID for a machine. |
57+
| >=8.0 | Kernel version. |
58+
| >=8.0 | dotnet-scaffold version. |
59+
| >=8.0 | Hashed tool information (tool name, tool version, tool package name, tool package version, chosen scaffolder category, related scaffolding categories) |
60+
| >=8.0 | Tool level (global or local tool) |
61+
| >=8.0 | Hashed command invoked (for example, `mvccontroller`) and whether it succeeded. |
62+
| >=8.0 | dotnet-scaffold-aspnet scaffolder name, step names, and whether they succeeded. |
63+
| >=8.0 | dotnet-scaffold-aspire scaffolder name and whether it succeeded. |
64+
| >=8.0 | dotnet-scaffold aspnet scaffolder validation method name and whether they succeed. |
65+
| >=8.0 | dotnet-scaffold aspire scaffolder validation method name and whether they succeed. |
66+
67+
## Additional resources
68+
69+
* [.NET Core SDK telemetry](/dotnet/core/tools/telemetry)
70+
* [.NET CLI telemetry data](https://dotnet.microsoft.com/platform/telemetry)

aspnetcore/toc.yml

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -322,6 +322,8 @@ items:
322322
uid: fundamentals/http-requests
323323
- name: Static files
324324
uid: fundamentals/static-files
325+
- name: dotnet-scaffold telemetry
326+
uid: fundamentals/dotnet-scaffold-telemetry
325327
- name: Web apps
326328
items:
327329
- name: Choose an ASP.NET Core UI

0 commit comments

Comments
 (0)