0

我问的原因是我想使用进程外模式,但我不能在每个用户的工作站上安装服务,只能在中央服务器上安装。事件源和侦听器服务之间的通信是 ETW 的事情,还是我可以使用某种 RPC?

4

2 回答 2

0

是的,进程外模式通过使用 ETW 工作。所有 ETW 事件都是系统范围的,因此服务只需要侦听 ETW 事件。

ETW 仅在本地工作,不提供您可以使用的远程解决方案。您的选择是在每个工作站上安装服务,侦听 ETW 事件(此处此处)并使用您自己构建的 RPC 解决方案将它们转发到您的服务器。想到使用MSMQ 。或者让您的应用程序直接将事件转发到您的服务器,这样您就不需要该服务。无论哪种方式,您都必须自己构建它。

于 2014-05-15T21:04:51.627 回答
0

要添加到 Lars 的答案,您还可以登录到 SQL。您可以使用一个 SQL 接收器,但与其他所有东西一样,为了获得最适合的定制,您将构建自己的(或从另一个类继承以给您一个良好的起点)。不过要小心。并非所有接收器的创建方式都相同。他们都有自己的优点和缺点。例如,使用 SQL 和 Azure 接收器,您必须担心高延迟。XML 格式化程序不写入根开始和结束节点,因此它不是格式良好的 xml。读取该文件的任何内容都必须提供它们。祝你好运!

于 2014-07-08T17:24:54.840 回答