问题标签 [etw-eventsource]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
564 浏览

c# - 为什么通道“调试”和“分析”不适用于我的 ETW-EventSource 实现?

我正在使用Microsoft EventSource 库为我的 Web 应用程序实现日志记录机制。

这个库提供了四个日志事件通道:“Admin”、“Operational”、“Debug”和“Analytic”。Admin 和 Operational 频道工作正常,频道可见,我可以记录事件。

出于某种原因,调试和分析通道没有出现在事件查看器中,如您在此屏幕截图中所见:

在此处输入图像描述

你可以在下面看到我的 EventSource 实现。此外,我已经上传了完整的 Visual Studio 项目,包括一个控制台测试应用程序

有谁知道为什么只有 Admin 和 Operational 可用?

我使用这个 cmd 片段来注册事件源:

C:\CustomEventSources>wevtutil.exe im EventSourceExample.Company-MyProject-WebApp.etwManifest.man /rf:"C:\CustomEventSources\EventSourceExample.Company-MyProject-WebApp.etwManifest.dll" /mf:"C:\CustomEventSources\ EventSourceExample.Company-MyProject-WebApp.etwManifest.dll"

0 投票
1 回答
276 浏览

etw - How to update EventSource schema

During the development of my custom EventSource I need to change the count and types of an event's parameters. Since I've used this EventSource for a while, it had already registered its events dynamically.

Is it possible to change or delete this registration?

0 投票
1 回答
842 浏览

c# - 算术运算导致使用 eventRegister.exe 溢出

我正在尝试使用 ETW 日志编译一个简单的项目。已添加 EventSource 作为 NuGet 参考。当我有Event这样的属性时

[Event(1, Message = "开始时基地发生了什么事:{0}")]

它没有工作,但至少它成功编译了。然后我改变了属性,变成了这样

[Event(2, Level = EventLevel.Error, Message = "Base stp {0}", Keywords = EventKeywords.All)]

我开始得到

意外错误:算术运算导致溢出。

  1. 有没有办法解决它并且不改变我的课程结构?
  2. 有没有办法调试或至少以某种方式调查 eventRegister.exe 中的错误?

我的命令行是:

Documents\Visual Studio 2015\Projects\Console1\packages\Microsoft.Diagnostics.Tracing.EventRegister.1.1.28\build\eventRegister.exe" -DumpRegDlls @"Documents\Visual Studio 2015\Projects\Console1\Common\bin\Debug\ Common.eventRegister.rsp" "Documents\Visual Studio 2015\Projects\Console1\Common\bin\Debug\Common.dll"

可以在此处找到测试示例的代码。

0 投票
1 回答
166 浏览

etw - 找不到自定义事件

我正在按照此处提供的示例使用自定义事件源。但是,在我运行示例后,在事件查看器中找不到事件消息,如下图所示:

在此处输入图像描述

你有什么想法吗?

0 投票
1 回答
5122 浏览

c# - .NET 4.6 和事件查看器中的事件源

我想问一个关于使用 System.Diagnostics.Tracing.EventSource 和 .NET 4.6 类写入事件查看器的非常具体的问题。

过去,如果您想使用事件查看器通道,您需要编写/生成 XML 清单并将其注册到操作系统。现在还是这样吗?

如果是这样,我正在努力找出如何让构建生成清单,我相信这可以通过 EventSource nuget 包实现,但我想使用 System.Diagnostics.Tracing 命名空间下的内置类 if可能的。

提前致谢。

0 投票
1 回答
218 浏览

visual-studio-2015 - 为什么我的自定义 EventSource 在 Windows 8.1 上有效,而在 Windows Server 2012 R2 上却搞砸了?

我已经使用 Visual Studio 2015 和 nuget 包Microsoft 事件源库(最新版本 1.1.28)构建了一个自定义事件源。

我已经在我的 Windows 8.1 工作站和 Windows Server 2012 R2 上使用wevtutil.exe安装了清单。

一般来说,这个 EventSource 可以在两台机器上工作,它正在获取在事件查看器中可见的事件。仅在 Windows Server 2012 R2 上,事件查看器中的输出看起来有点糟糕。

当我将它安装在我的开发工作站上时,它工作正常。这是我的示例 UnhandledException 事件的示例:

在此处输入图像描述

当我在 Windows Server 2012 R2 上安装它时,事件查看器完全搞砸了,如您在此屏幕截图中所见:

在此处输入图像描述

有谁知道为什么会这样?我该如何解决?

编辑:

我可以按照以下步骤使用Microsoft EventSource 库示例重现它:

  1. 在 Visual Studio 中创建一个新的控制台应用程序项目并将其命名为“DemoEventSource”
  2. 从 nuget安装Microsoft EventSource 库示例
  3. 运行 EventLogEventSourceDemo。您可以注释掉“EventSourceSamples\00_AllSamples.cs”中的所有其他示例,因为它们与此问题无关在此处输入图像描述
  4. 按 F5 运行它,然后按照说明操作,事件查看器将自动打开。在我的工作站上它工作正常:在此处输入图像描述
  5. 在下一步中,我使用 Windows Server 12 在 Azure 上创建了一个虚拟机(Windows Server 2012 R2 和 Windows Server 2012 上出现问题)并在那里部署了测试应用程序。如我上面的示例所述,结果很混乱:在此处输入图像描述
0 投票
1 回答
268 浏览

events - PerfView 无法捕获自定义 ETW 事件

我有一个演示解决方案,它使用 System.Diagnostics.Tracing.EventSource 类引发事件。我的课程如下:-

我按照此处给出的步骤使用 PerfView 工具查看此解决方案生成的事件。我已经*DemoEvent在 PerfView 的附加提供者部分给出了。但是,我无法在 PerfView 的输出中看到这些事件。有人能帮我一下吗?

0 投票
1 回答
40 浏览

etw-eventsource - EventSource/ETW 是否在单个进程中支持多种语言(en-US、es-MX)?

如果我的程序集中有多个资源文件(一个用于 en-US,另一个用于 es-MX 等),并且我根据调用者设置 CurrentUIThread 文化,EventSource 是否(或应该)使用特定于线程的文化发布事件?

0 投票
0 回答
329 浏览

azure - Azure 诊断 - 始终禁用事件源

我正在尝试通过在我的云服务中启用 Azure 诊断来记录 ETW 事件。部署后,如果我检查“诊断配置”对话框,ETW 日志似乎已启用。此外,创建了所有 WAD* 表,但根本没有创建在 diagnostics.wadcgfx 文件中指定的我的自定义 ETW 表。这是日志记录代码 -

diagnostics.wadcfgx 中的代码 -

如果我在服务中调试,isEnabled()总是 False。所以WriteEvent永远不会被调用。我正在使用带有 .NET 框架 4.5 的 Azure 2.9 SDK。我应该检查什么才能使此日志记录正常工作?我已经从 VS 的属性中启用了 Worker 角色的诊断,并指定了存储帐户详细信息来存储诊断结果。

0 投票
1 回答
58 浏览

c# - OpCode 附加到进程外语义日志记录(SALB)c# 中的事件名称

我正在使用弹性搜索进行进程外语义日志记录。当我使用 kibana 浏览事件时,我可以看到事件即将到来。但事件名称显示为“事件名称+操作码”。即事件 OpCode 被附加到事件名称。

我的示例活动之一是

在弹性搜索(Kibana)中,事件名称显示为“ RequestStartStart

操作码开始附加到事件名称是正常行为吗?