Microsoft.VisualStudio.Telemetry 命名空间

AssetEvent

存储资产事件信息的类。 资产是用户任务或操作的目标,例如解决方案、项目、文件、扩展、许可证Designer。

AssetService

一个类,用于为资产使用者和提供者提供帮助方法。 使用者可以使用此类通过 GetCorrelation 方法获取关联。 提供程序可以通过 RegisterCorrelation 方法注册此服务中的现有关联,或者 (,) 通过 RegisterProvider 方法自行注册,以发送资产事件并按使用者的请求返回相关。

DataModelEventNameHelper

一个帮助程序类,用于验证事件名称是否符合数据模型事件名称架构,并根据名称设置属性。 下面是数据模型事件名称架构,它要求事件名称是唯一的,而不是空字符串。 它由 3 个部分组成,必须遵循模式 [product]/[featureName]/[entityName]。 FeatureName 可以是单级功能,也可以是用“/”分隔的功能层次结构。 例如,vs/platform/opensolution;vs/platform/editor/lightbulb/fixerror;

FaultEvent

表示故障的遥测事件,例如异常 我们有 2 个后端要发送数据:遥测后端和 Watson (后端) 。 跨平台( (Mac、Linux) )可以使用同一体系结构。 例如,在 Mac 上,有 Merp,即 Windows 错误报告 的 Max 实现。 FaultEvent 继承自 TelemetryEvent 用户可以直接创建此类的实例,并且可以直接在类上添加自定义属性,而无需使用回调。 创建其中一个事件后,调用 Session.PostFault (faultEvent) 这将调用回调,将事件发布到 Watson ((如果) 采样)和 Post 作为普通遥测事件,或者可以直接使用 TelemetrySession.PostFault () 而不是此类。

JsonCreationConverter<T>

抽象基类,在使用 Newtonsoft.Json 从 Json 反序列化对象期间充当对象创建者的基类

OperationEvent

一个类,用于存储操作数据模型事件的信息。 操作在应用程序中执行一些工作,并附带结果 (,例如成功、失败) 。 如果用户直接调用操作,请使用 UserTaskEvent 或相关方法。 一些操作示例包括许可证检查、包加载、Windows 布局加载。

对于长时间运行或异步操作,为了了解期间发生的其他情况或跟踪是否由于错误而部分完成,请使用跟踪起点和终点的方法 StartOperation(TelemetrySession, String)

TelemetryActivity

[已过时]请使用数据模型 TelemetryScope<T> 跟踪 dev15 及更高版本中的性能。 有关详细信息,请参阅 http://aka.ms/datamodel

TelemetryComplexProperty

此类表示复杂值支持,例如数组、字典。 处理器会将其转换为 JSON 字符串。 同样,对于此类类型,我们放宽了属性值的 1K 限制。

TelemetryContext

遥测上下文是工作单元的概念。 此处提供更多详细信息

TelemetryDataModelProperty

此类表示数据模型属性。

TelemetryDisposableObject

帮助程序基类,提供用于释放托管资源和防止多次调用 Dispose 的虚拟方法。

TelemetryEvent

类表示可发布到服务器的遥测事件。 类不是线程安全的

TelemetryEventMatchByName

此类用于按遥测事件名称表示遥测筛选器。

TelemetryHashedProperty

此类表示应进行哈希处理的属性。 在处理过程中,包含的原始值将由加密算法转换为哈希值。

TelemetryMetricProperty

此类表示数据模型指标属性。 属性名称将使用后缀“进行更新。发布事件时为 DataModelMetric。 指标是作为系统特定特征的度量值收集的值或聚合计数。 例如,使用指标,如文件大小、项目计数、上传大小;持续时间等性能指标。

TelemetryPiiProperty

此类表示个人身份信息属性。 在处理过程中,包含的原始值将由加密算法转换为哈希值。

TelemetryPropertyBag

TelemetryPropertyBag 适用于向子事件添加属性

TelemetryPropertyBags

属性包的集合

TelemetryPropertyBags.Concurrent<TValue>

并发属性包

TelemetryResultStrings

定义用于属性 Result 的字符串的类。

TelemetryScope<T>

此类用于发送具有持续时间和结果的应用程序工作的数据模型事件。 事件可以是 UserTaskEvent ,也可以 OperationEvent 是在开始时发送一个事件,在工作结束时发送另一个事件。

TelemetryScopeSettings

此类用于在创建其实例时对用于控制 TelemetryScope 行为的设置进行总结。

TelemetryService

核心遥测类。 它具有默认的会话对象。

TelemetrySession

表示一个可以发布遥测事件和会话属性的遥测会话。 API 尽最大努力将遥测数据传送到服务器。 请求将排队并分批发送。 如果在进程退出之前无法发送事件,这些事件将保存在本地。 当下一个应用程序实例调用遥测 API 时,将恢复发送。 如果进程无响应或严重崩溃或 30 天内没有 Internet 连接,遥测可能会丢失。 所有方法都是线程安全的,并立即返回。

TelemetrySessionCommandLineExtensions

用于 TelemetrySession 发布命令行参数的扩展方法。

TelemetrySessionExtensions

包含现有类 TelemetrySession 的所有数据模型扩展方法的类。

TelemetrySettingProperty

此类表示数据模型设置属性。 属性名称将使用后缀“进行更新。DataModelSetting“发布事件时。 设置是用户可以自定义值以更改应用的外观/感觉/行为方式的内容。 例如,VS 工具选项对话框中的所有设置。 计算机级或环境属性不是设置。 它们应作为常规属性发布。 例如,CPU 计数、OS 区域设置。

TelemetryTestChannelEventArgs

测试通道参数

UserTaskEvent

一个类,用于存储用户任务数据模型事件的信息。 用户任务是由 USER 直接调用并附带结果 ((例如成功、失败) )的应用程序操作。 它用于用户行为/意向分析。 用户知道操作并能够执行。 例如,打开项目和显示工具窗口是用户任务;而是加载 VS 包和设计时生成是操作。

对于长时间运行或异步用户任务,为了了解期间发生的其他情况或跟踪是否由于错误而部分完成,请使用同时跟踪起点和终点的方法 StartUserTask(TelemetrySession, String)

结构

TelemetryEventCorrelation

用于定义关联信息的结构。

接口

IAssetProvider

由资产提供程序实现的接口,用于按需提供资产关联 ID。

IFaultUtility

用于本机代码调用者的 FaultCallback 接口

ISetTelemetrySession

TelemetryNotificationService.Default 和 TelemetryService.DefaultSession

ITelemetryEtwProvider

遥测事件的主机特定 ETW 提供程序的实现。

ITelemetryEventMatch

表示遥测事件筛选器。

ITelemetryManifestRouteArgs

为路由器提供参数的 ITelemetryManifestRouteArgs 接口

ITelemetryPropertyBag<TValue>

泛型 PropertyBag 的 ITelemetryPropertyBag 接口

ITelemetryTestChannel

用于接收事件的测试通道的接口

枚举

DataModelEventType

支持的数据模型事件类型

FaultSeverity

基于预期重要性或影响的给定故障严重性的指示器。 更严重的故障将在报告中提升得更高,而不太严重的故障将去强调。

OperationStageType

用于定义操作阶段类型的枚举。 请不要更改枚举名称,因为它是客户端-服务器协定的一部分。

TelemetryResult

用于定义用户任务或操作的结果的枚举。

TelemetrySeverity

用于定义遥测事件的严重性的枚举。 它用于任何想要根据严重性对数据进行分类的数据使用者。

WER_DUMP_TYPE

转储类型 https://msdn.microsoft.com/en-us/library/windows/desktop/bb513622(v=vs.85).aspx