我们目前正在努力将诊断流下沉到事件中心:
我已使用 ARM 模板将诊断扩展添加到服务结构集群,当前正在输出到 Azure 存储,我现在需要的是设置事件中心的接收器。
我关注了这个post ,它描述了如何将 SinksConfig
节点添加到diagnostics.wadcfgx 文件:
但是,这似乎只对 Azure 云服务项目有效?在云服务项目中,通过转到角色的属性并单击启用诊断来创建文件来添加配置文件看起来很容易:
但是,对于 Service Fabric 项目,无法执行此操作,因为没有 Web 角色的概念,并且 SF 项目的属性中似乎没有任何位置可以启用诊断/添加 wadcfgx 文件.
我通过将以下内容添加到 ARM 模板,将诊断扩展添加到规模集中的虚拟机:
我可以在此处看到存储帐户(ETW 当前流式传输到的位置)的定义位置,但我找不到有关如何指定事件中心的指南?
我确实想知道这是否只是因为它没有在任何地方记录,或者因为 Service Fabric 尚无法实现。这个article日期为 7 月,内容如下:
这似乎表明此功能当前可能适用于 Service Fabric,也可能不适用。
总结
那么有两个主要问题:
- 当前是否可以设置从 Service Fabric 群集(启用了诊断扩展)到事件中心的 ETW 流?如果没有,距离有多远?
- 如果可以的话应该如何设置?如果要像上面定义的那样在ARM模板中定义它,它的语法是什么?
最佳答案
看看this例子。 Vaclav 为各种类型的商店创建了事件监听器。确保包含 Nuget 包'Microsoft.Diagnostics.Tracing.EventSource
' 并替换 ' System.Diagnostics.Tracing
'与'Microsoft.Diagnostics.Tracing
' 在你的 ServiceEventSource
中类。
在 ARM 模板中注册事件提供程序,如下所示 here .
关于azure - 目前是否可以从 Service Fabric 群集诊断扩展将 ETW 流式传输到事件中心?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39995577/