使用事件流监视来自其他 Service Fabric 进程的 ETW 事件



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

这样做的原因之一是,我想确保捕获在服务异常和即将死亡时写入的 ETW 事件。目前,在崩溃的同一进程中运行的 EventFlow 只是偶尔能够将事件写入其输出(在本例中为事件日志(,这并不奇怪。

谢谢汉斯

是的,你可以。只需使用事件源的名称配置 ETW 输入。

从文档中:

此输入从 Windows 事件跟踪 (ETW( 提供程序Microsoft捕获数据。支持基于清单的提供程序以及基于托管事件源基础结构的提供程序。数据在机器范围内捕获

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

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

最新更新