gpt4 book ai didi

c# - 语义日志分析器异常 WriteEvent 参数和事件参数的数量不同

转载 作者:行者123 更新时间:2023-11-30 16:50:51 25 4
gpt4 key购买 nike

此片段使语义日志分析器抛出“事件名称‘HandlingCommand’中的 WriteEvent 参数和事件参数的数量不同。”

[NonEvent]
public void HandlingCommand(Command command)
{
if (this.IsEnabled())
{
this.HandlingCommand(command.Id.ToString(), command.Agent.AgentId.ToString());
}
}

[Event(1101,
Level = EventLevel.Informational,
Keywords = Keywords.Agent)]
private void HandlingCommand(string commandId, string agentId)
{
this.WriteEvent(1101, commandId, agentId);
}

解决分析器错误的唯一方法是使用两个 WriteEvent 参数(例如 event id 和 commandId)和一个事件参数(例如 commandId)。如果我尝试使用具有多个参数/参数的任何组合,则会抛出上述异常。异常会在具有多个参数/参数的任何事件上抛出,而不仅仅是提供的示例。

我使用这些示例作为起点 https://github.com/mspnp/semantic-logging/tree/master/quickstarts .

最佳答案

我遇到了同样的错误,无法弄清楚。最终我得到了 EventSourceAnalyzer 代码,编译并调试。

我发现我的 WriteEvent 实际上写了以下内容:
EventSourceException while processing event "MethodName": No Free Buffers available from the operating system (e.g. event rate太快了)。

在 EventSourceAnalyzer 类中有这一行:
if (eventParameters.Length != this.EventData.Payload.C​​ount)
抛出不匹配异常

现在,因为我的 WriteEvent 实际上传递了 3 个参数,所以 WriteEvent 实质上抛出了一个错误导致了 EventSourceAnalyzer将其错误地解释为不匹配。

关于c# - 语义日志分析器异常 WriteEvent 参数和事件参数的数量不同,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34404359/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com