全局dotnet-coverage工具并Microsoft.CodeCoverage.Console.exe收集遥测数据,以帮助Microsoft了解如何改进产品。 例如,此使用情况数据有助于确定新功能的优先级和调试问题。 这两个工具共享相同的命令图面,因此收集相同的遥测数据。
可以随时禁用遥测。 有关如何Microsoft处理数据的详细信息,请参阅Microsoft隐私声明。
遥测数据的类型
代码覆盖率工具仅收集 使用情况数据。 使用情况数据指示使用哪些命令,以及工具运行时设置的选项。 此信息有助于Microsoft确定产品改进的优先级。
禁用遥测报告
若要禁用遥测,请将 DOTNET_COVERAGE_TELEMETRY_OPTOUT 环境变量设置为 1.
当标准.NET CLI 选择退出变量DOTNET_CLI_TELEMETRY_OPTOUT设置为1时,也会禁用遥测。 因此,选择退出 .NET SDK 遥测也会从代码覆盖率工具中选择退出遥测。
公开
工具在首次运行文本时显示类似于以下内容的文本。 此首次运行体验会通知你有关数据收集的信息。
Telemetry
---------
The code coverage tools collect usage data in order to help us improve your experience. The data is collected by Microsoft. You can opt out of telemetry by setting the DOTNET_COVERAGE_TELEMETRY_OPTOUT environment variable to '1' using your favorite shell.
This message is displayed only once. Set the DOTNET_COVERAGE_NOLOGO environment variable to '1' to suppress it in the future.
通知仅显示一次。 若要取消它,例如,在脚本或持续集成(CI)中,请将 DOTNET_COVERAGE_NOLOGO 环境变量设置为 1 或设置为或 true。 此行为镜像 DOTNET_NOLOGO。
数据点
遥测功能不会收集个人数据,例如用户名或电子邮件地址。 它不会扫描代码或提取项目级数据,例如存储库或作者。
它不会提取应用程序访问或创建的数据文件的内容、应用程序对象的内存转储或剪贴板内容。
使用Azure Monitor技术将数据安全地发送到Microsoft服务器。 数据在受限的访问下保存,并在安全Azure 存储系统的严格安全控制下发布。
可能包含用户数据的值(例如文件路径、用户提供的会话 ID(来自 --session-id)和命令行,永远不会逐字发送。 相反,只有提供选项或参数的事实才会记录为布尔值 true。
如果怀疑遥测正在收集敏感数据,或者数据正在不安全或不当处理,请将问题提交到 microsoft/codecoverage GitHub 存储库中。
遥测功能收集以下数据点:
| 版本 | Data |
|---|---|
| 18.10 | 生成事件的工具的名称,例如 dotnet-coverage 或 Microsoft.CodeCoverage.Console。 |
| 18.10 | 工具的版本。 |
| 18.10 | 遥测架构的版本。 |
| 18.10 | 操作系统、版本和体系结构。 |
| 18.10 | 进程体系结构。 |
| 18.10 | .NET运行时框架。 |
| 18.10 | 运行时标识符(RID)。 有关详细信息,请参阅 .NET RID 目录。 |
| 18.10 | 该工具是否在 CI 环境中运行。 |
| 18.10 | 用于确定地理位置的三个八进制 IP 地址。 |
| 18.10 | 调用的时间戳。 |
| 18.10 | 自动生成的关联 ID(GUID),用于关联单个工具运行中的事件。 此值不同于用户提供的会话 ID。 |
| 18.10 | 调用的命令的名称,例如 collect 或 merge。 |
| 18.10 | 是否提供了设置文件。 |
| 18.10 | 是否提供了输出路径。 |
| 18.10 | 是否提供了包含文件的列表。 |
| 18.10 | 是否为 connect 命令提供了应用程序参数。 |
| 18.10 | 是否提供了日志文件路径。 |
| 18.10 | 是否启用了服务器模式。 |
| 18.10 | 是否启用了后台模式。 |
| 18.10 | 合并后是否删除输入文件。 |
| 18.10 | 是否请求递归合并。 |
| 18.10 | 快照是否已重置。 |
| 18.10 | 是否提供了标记名称。 |
| 18.10 | 是否提供了标记标识符。 |
| 18.10 | 是否检测依赖项。 |
| 18.10 | 控制台输出是否已禁用。 |
| 18.10 | 是取消徽标还是首次运行通知。 |
| 18.10 | 输出格式,例如 cobertura 或 xml。 |
| 18.10 | 日志级别,例如 Debug。 |
| 18.10 | 超时值。 |
共享上下文
由于遥测是通过 Azure 应用程序 Insights 传递的,因此每个事件还包括标准、非个人上下文:操作系统说明和随机生成的关联 ID,用于关联单个运行中的事件。 此关联 ID 不是用户提供的会话 ID。 此上下文不包括代码、程序集或覆盖范围数据的内容。