Azure VM 规模集诊断 ETW 由于无法读取日志时间戳而创建重复条目

Azure VM scale set diagnostic ETW creating duplicate entries due to being unable to read log timestamps

我有 Service Fabric 群集,它由 5 节点 VM 规模集支持。我已在规模集上启用诊断扩展并将其配置为启用 ETW 日志传输并将数据发送到 Application Insights。

我可以看到发生了这种情况,但我看到生成的每条消息都有重复的条目。每条消息在 App Insights 中显示 4 次:

我也在通过代码中的侦听器登录到 table 存储,可以看到跟踪只在那里记录一次,所以我很确定这是诊断扩展的问题。

但是我注意到 ETW 日志中有以下警告:

这似乎表明重复是由于无法读取日志时间戳造成的,因为它同时被其他东西访问。

是否因为规模集上有多个节点,它们都试图同时访问ETWEventTable来获取时间戳?

有办法解决这个问题吗?或者,如果另一个问题是我如何解决它的原因?

这里的问题是我有多个提供商都使用相同的事件目标:

    "EtwEventSourceProviderConfiguration":[  
          {  
              "provider":"Provider1",
              "Event":[  

              ],
              "DefaultEvents":{  
                 "eventDestination":"ETWEventTable"
              }
           },
           {  
              "provider":"Provider2",
              "Event":[  

              ],
              "DefaultEvents":{  
                 "eventDestination":"ETWEventTable"
              }
           },
           {  
              "provider":"Provider3",
              "Event":[  

              ],
              "DefaultEvents":{  
                 "eventDestination":"ETWEventTable"
              }
           }
        ],

我添加了唯一命名的事件目的地,这似乎已经停止了消息复制:

 "EtwEventSourceProviderConfiguration":[  
          {  
              "provider":"Provider1",
              "Event":[  

              ],
              "DefaultEvents":{  
                 "eventDestination":"ETWEventTableProvider1"
              }
           },
           {  
              "provider":"Provider2",
              "Event":[  

              ],
              "DefaultEvents":{  
                 "eventDestination":"ETWEventTableProvider2"
              }
           },
           {  
              "provider":"Provider3",
              "Event":[  

              ],
              "DefaultEvents":{  
                 "eventDestination":"ETWEventTableProvider3"
              }
           }
        ],