此片段使语义日志分析器抛出“事件名称'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 参数(例如,事件 id 和 commandId)和一个事件参数(例如,commandId)。如果我尝试使用具有多个参数/参数的任何组合,则会引发上述异常。任何具有多个参数/参数的事件都会引发异常,而不仅仅是提供的示例。
我已将这些示例用作起点https://github.com/mspnp/semantic-logging/tree/master/quickstarts。