2

官方发布说明说:

改进了与 EventSource nuget 包的兼容性

  • SLAB 的源必须更新和重建才能与 EventSource nuget 包(支持通道,但不支持采样)一起使用。这个过程现在相当轻松。
    • 向所有项目添加了对 EventSource nuget 包的引用
    • 在所有源文件中更改System.Diagnostics.TracingMicrosoft.Diagnostics.Tracing
    • 在单元测试项目中定义了 EVENT_SOURCE_PACKAGE 常量(以禁用可能无法使用 nuget 版本的测试)。

这有点神秘。Microsoft.Diagnostics.Tracing有些东西似乎倒退了,因为我在 Nuget 下载中根本看不到任何引用。

或者是你必须做的子项目来构建它(所以它应该说,添加、更改、定义而不是添加、更改、定义)?

嗯,这些说明(如果它们是说明)是不够的:

  • Microsoft.Diagnostics.Tracing已经引用了三个地方,因此会给出重复的警告
  • Microsoft.Practices.EnterpriseLibrary.SemanticLogging.Etw.Configuration.EventSourceSettings在(这是一个类)和Microsoft.Diagnostics.Tracing.EventSourceSettings(这是一个枚举)之间有多个地方出现歧义。
4

3 回答 3

1

一点侦探工作和常识:

SLAB 的最后发布日期是 2014 年 7 月 25 日,已经有一大堆版本Microsoft.Diagnostics.Tracing.EventSource,包括一个可能是无意引入EventSourceSettings的 .

如果我安装并参考 1.0.26 版,说明有效。

现在只需要找出版本 1.1.28 中缺少哪些内容,以及我是否想念它们。

于 2016-01-28T14:34:09.760 回答
1

因此,我只是按照上面的说明使用 SLAB 1.1.28 和 Microsoft.Diagnostics.Tracing.EventSource 命名空间中的最新 NuGet EventSource 使 SLAB 与 NuGet EventSource 包一起工作。

从本质上讲,您需要修复 Microsoft.Practices.EnterpriseLibrary.SemanticLogging.Etw.Configuration.EventSourceSettings 和 Microsoft.Diagnostics.Tracing.EventSourceSettings 之间的模糊引用,就像上面所说的那样。

您需要 Microsoft.Practices.EnterpriseLibrary.SemanticLogging.Etw.Configuration.EventSourceSettings 参考。

它可以工作,生成平面文件日志并写入事件查看器,当与 PerfView 等控制器一起使用时,生成 ETL 文件以进行详细分析。

接下来,我将测试进程外案例。

于 2016-08-22T21:49:53.257 回答
0

@Benjol 的侦探工作是正确的。

许多用户希望能够将 EventSource 通道(包含在 EventSource NuGet 包中)与 SLAB 一起使用,因此兼容性得到了改进,以便在发布时针对 EventSource 包进行编译非常轻松。

但是,SLAB 最近没有更新,但 EventSource 包继续添加/修改功能。其中一些可能是当前 SLAB 实现的重大更改。由于可能尚未测试与 EventSource 后续版本的兼容性(我不确定团队对此做了什么),因此可能存在潜在问题。

于 2016-02-18T02:13:19.417 回答