1

好奇是否有人有在进程外使用 EventFlow 的经验?文档表明它是为使用进程内(与被监视的内容相关)而构建的,但我希望在单独的进程(Service Fabric 服务)中运行它并监视来自运行在同一进程上的许多其他 Service Fabric 服务的 EventSource 输入机器。

这样做的原因之一是,我想确保捕获在服务异常且即将终止时写入的 ETW 事件。目前,在崩溃的同一进程中运行的 EventFlow 仅偶尔能够将事件写入其输出(在本例中为事件日志)也就不足为奇了。

谢谢,汉斯

4

1 回答 1

0

是的你可以。只需使用 EventSource 的名称配置 ETW 输入。

从文档:

此输入从 Microsoft Event Tracing for Windows (ETW) 提供程序中捕获数据。支持基于清单的提供程序以及基于托管 EventSource 基础结构的提供程序。数据在机器范围内捕获

确保使用 EventFlow 捕获事件的服务与发出事件的服务在同一节点上运行。最好的办法是让它成为一个 InstanceCount 为 -1 的无状态服务,这样它就可以在每个节点上运行。

请注意,如果此日志服务在某个节点上失败,则在该节点恢复之前不会在该节点上捕获任何事件。所以我想它最好用作备份或其他东西。

于 2017-06-06T18:53:56.173 回答