写点什么

Microsoft 使用.NET Core SDK 遥测数据

  • 2017-07-30
  • 本文字数:1474 字

    阅读完需:约 5 分钟

Microsoft 发布了采集自.NET Core SDK 用户的遥测原始数据集。数据集的时间跨度是从 2016 年第三季度到 2017 年第二季度,为了解当前开发人员使用 SDK 的情况提供了一个视角。据 Microsoft 的 Rich Lander 介绍,今后 Microsoft 将每季度提供一次遥测数据集,数据集将以开放数据共享署名许可(ODC-By,Open Data Commons Attributions License)提供。

数据反映的是从命令行使用.NET Core 的情况,因此未涉及.NET Core 的 Visual Studio 用户。.NET Core SDK 1.X 采集如下应用信息:

  • 正在使用的命令(例如:build、restore 等);
  • 命令的退出码(ExitCode);
  • 对测试项目所使用的测试运行程序;
  • 调用的时间戳;
  • 运行时节点中是否存在运行时 ID
  • 正在使用的 CLI 版本;
  • 操作系统版本。

Lander 指出,对于.NET Core SDK 2.X 系列,遥测进一步采集下述应用信息。应注意的是,每个从命令行运行.NET Core SDK 的机器,对应于一个匿名并唯一的 ID:

  • dotnet命令的参数和选项,用于确定使用该产品的更多细节信息。例如,采集dotnet new的模板名称,采集dotnet build --framework netstandard2.0所指定的框架。遥测只采集一些给定的参数和选项,而非任意的字符串。
  • 容器,用于确定 SDK 是否在容器中运行。这有助于 Microsoft 确定是否应进一步提供更多的支持容器的工作。
  • 命令的持续时间,用于确定一个命令运行的时间。这对于识别那些值得深入调查的性能问题十分有用。
  • 目标.NET 框架,用于确定所使用的目标框架,以及是否指定了多个框架。该应用信息对于了解最广泛使用的.NET 标准版本情况,以及需要什么样的使用指导是十分有用的。
  • 哈希 MAC 地址,用于确定机器的加密 ID。该 ID 是匿名且唯一的。这对于确定使用.NET Core 机器的总体数量十分有用。考虑到用户的反馈意见,Lander 称这些数据将不会对公众发布。

必须加以重申的是,是否参与.NET Core SDK 遥测项目是一种可选的行为,但是采用了默认为参加的方式。这意味着,如果开发人员不希望参与其中,将必须去设置一个环境变量(即 DOTNET_CLI_TELEMETRY_OPTOUT )启动禁用。此外,Lander 重申了遥测并非.NET Core 运行时的组成部分,因此应用信息采集只针对.NET Core SDK 用户。

Microsoft 的.NET Core 团队不仅扩展了所采集的应用信息数据的范围,而且正根据他们从中获得的实践经验去改进.NET Core 2 SDK。首先,团队将会为不同的 Linux 提供统一的构建版本,而非为每个其所支持的发布版(例如 Red Hat、Debian 等)提供一个单独的版本。其次,一个对 macOS 用户利好的消息是,OpenSSL 不再是必须的。团队正为实现从源代码构建.NET Core 2 而做一些改进(此前并未提及),使得.NET Core 2 SDK 更易于加入到 Linux 发布版的软件包架构中。

有意思的是,在不同的操作系统上,使用得最多的命令是不同的。

  • OS X(macOS):“restore”使用得最多;
  • Linux:“run”使用得最多(达一千一百万次,远高于第二名“restore”的三百万次);
  • Windows:“build”使用得最多。

.NET Core SDK 本身并不记录用户的 IP 地址,但 Microsoft 的服务器会做记录。客户的 IP 被截为三个八位的字节,这使得 Microsoft 可以追踪全球范围内的 SDK 使用情况。对于从操作系统层面看,.NET Core SDK 开发人员使用 Windows 最多,占 71%,使用 Linux 的占 18%,而使用 macOS 的占 11%。

如果对这些已提供的数据集感兴趣,可以直接从 Microsoft 获取。(需提请注意的是,这些数据集是一些很大的文件,大小从 188M 到 516M 不等。)获取地址分别为:

查看英文原文 How Microsoft Uses the .NET Core SDK Telemetry

2017-07-30 19:001240
用户头像

发布了 227 篇内容, 共 72.2 次阅读, 收获喜欢 27 次。

关注

评论

发布
暂无评论
发现更多内容

工业自动化:国内外常用工业组态软件

2D3D前端可视化开发

物联网 工业自动化 工业控制系统 工业组态软件 组态工具

华为云API Explorer重磅推出API编排,开发者0代码高效构建工作流(体验用户招募中)

华为云PaaS服务小智

云计算 软件开发 华为云

网络分析、自动化处理的强大工具

百度开发者中心

大模型训练 #人工智能 千帆大模型平台

专为小白打造—Kafka一篇文章从入门到入土 | 京东云技术团队

京东科技开发者

云计算 kafka 中间件 消息列队 企业号9月PK榜

IoTLink版本更新V1.43.0 新增部分ERP功能:销售合同 库存管理

山东云则信息科技

物联网

在统信UOS上部署DotNet(Core)服务

为自己带盐

国产化 UOS dotnetcore

飞桨黑客马拉松第五期即刻开启报名!

飞桨PaddlePaddle

飞桨 黑客松

释放创新:与加密货币交易软件开发公司合作

区块链软件开发推广运营

数字藏品开发 dapp开发 区块链开发 链游开发 NFT开发

大语言模型的微调与优化

百度开发者中心

#人工智能 LLM 大语言模型

大模型在超算上的应用与发展

百度开发者中心

#人工智能 LLM 大模型推理 千帆大模型平台

代码层面探索前端性能 | 京东云技术团队

京东科技开发者

CSS 性能优化 前端 企业号9月PK榜

DAPP代币通缩燃烧销毁质押挖矿系统开发(成熟技术)

l8l259l3365

破解 VMware Fusion Pro 13 VM虚拟机 ,VMware Mac永久激活安装教程

晴雯哥

华秋供应链,让硬科技创业更简单

华秋电子

创业

Java开发分析软件JProfiler Macv14.0.0永久激活版 附注册

晴雯哥

Comparing QCN9274 and QCN9074: WPA3 Support in Qualcomm Wi-Fi Chips

wallyslilly

QCN9074 qcn9274

视频剪辑中生成花字特效的代码案例详述

阿里云视频云

云计算 阿里云 视频云

HarmonyOS CPU与I/O密集型任务开发指导

HarmonyOS开发者

HarmonyOS

支持向量机(SVM)

小魏写代码

如何教会小白使用API接口获取商品数据

Noah

API 文档 API 开发

别学提示词:42类法大师 - 万字精华浓缩

豆哥

ChatGPT 提示词

Triband QCN9024 work with IPQ6010-IPQ8072 - achieve higher speed bandwidth, more available channels

wifi6-yiyi

OpenHarmony自定义构建函数:@Builder装饰器

OpenHarmony开发者

OpenHarmony

解锁Java面试中的锁:深入了解不同类型的锁和它们的用途

程序那些事

Java 面试 java面试 程序那些事 面试秘籍

合约跟单丨合约交易丨秒合约项目系统开发(源码案例)

西安链酷科技

合约交易所开发

2023中国智能产业高峰论坛丨文档图像大模型的思考与探索

热爱编程的小白白

线下Meetup:在数智化转型背景下,火山引擎VeDI的大数据技术揭秘

字节跳动数据平台

大数据 数据治理 数据安全 数据研发 企业号9月PK榜

垂直领域LLM训练推理全栈利器

百度开发者中心

#人工智能 LLM 大语言模型

从索引实现上来看看你用的 TDengine 为什么这么快!

TDengine

tdengine 时序数据库 国产时序数据库

Microsoft使用.NET Core SDK遥测数据_.NET_Jeff Martin_InfoQ精选文章