C# 诊断测井
如果以前有人问过,我会道歉 我最近在我们的C#解决方案上启用了diagnostics messagelogging。然而,我从网络上得到的例子,标准,我认为记录了太多的事件 我是否可以调整此messagelogger以仅记录系统中遇到的严重错误?我还不熟悉这个消息日志,所以如果我知道该怎么做,我就不会问你们了 我当前的设置:C# 诊断测井,c#,.net,event-log,event-listener,C#,.net,Event Log,Event Listener,如果以前有人问过,我会道歉 我最近在我们的C#解决方案上启用了diagnostics messagelogging。然而,我从网络上得到的例子,标准,我认为记录了太多的事件 我是否可以调整此messagelogger以仅记录系统中遇到的严重错误?我还不熟悉这个消息日志,所以如果我知道该怎么做,我就不会问你们了 我当前的设置: <system.serviceModel> <diagnostics> <!-- Enable Message Logging here
<system.serviceModel>
<diagnostics>
<!-- Enable Message Logging here. -->
<!-- log all messages received or sent at the transport or service model levels >-->
<messageLogging logEntireMessage="true" maxMessagesToLog="300" logMessagesAtServiceLevel="true" logMalformedMessages="true" logMessagesAtTransportLevel="true" />
</diagnostics>
所有这些当然都在我的App.config中。我只在这里使用它,而不是在我的代码或其他任何地方。这是可行的,但对我来说,保存的信息太多了。我可以保存主要/关键错误吗
C#项目,Visual Studio 2015,Windows 10。如果您需要更多,请询问。在您的
节点中,将属性switchValue的值更改为Critical,然后这应该只记录这些事件。信息是一个事件,通常发生在跟踪的任何地方
您还可以查看此处以获得有关日志记录的更多信息:在您的
节点中,将属性switchValue的值更改为Critical Error,然后这应该只记录这些事件。信息是一个事件,通常发生在跟踪的任何地方
您还可以查看此处以获得有关日志记录的更多信息:设置中日志过多的问题发生在
System.ServiceModel.MessageLogging
侦听器中;您告诉ServiceModel
记录所有服务消息,这很好。但是,如果您只想记录ServiceModel
和ServiceModel.MessageLogging
的错误消息,则需要为sharedListener
创建一个筛选器
以下诊断配置运行良好:
<system.diagnostics>
<sources>
<source name="System.ServiceModel">
<listeners>
<add name="xml" />
</listeners>
</source>
<source name="System.ServiceModel.MessageLogging">
<listeners>
<add name="xml" />
</listeners>
</source>
</sources>
<switches>
<add name="System.ServiceModel" value="Critical, Error"/>
</switches>
<sharedListeners>
<add initializeData="Diagnostics.svclog" type="System.Diagnostics.XmlWriterTraceListener" name="xml">
<filter type="System.Diagnostics.EventTypeFilter" initializeData="Critical, Error"/>
</add>
</sharedListeners>
<trace autoflush="true" />
设置中日志过多的问题出现在
System.ServiceModel.MessageLogging
侦听器中;您告诉ServiceModel
记录所有服务消息,这很好。但是,如果您只想记录ServiceModel
和ServiceModel.MessageLogging
的错误消息,则需要为sharedListener
创建一个筛选器
以下诊断配置运行良好:
<system.diagnostics>
<sources>
<source name="System.ServiceModel">
<listeners>
<add name="xml" />
</listeners>
</source>
<source name="System.ServiceModel.MessageLogging">
<listeners>
<add name="xml" />
</listeners>
</source>
</sources>
<switches>
<add name="System.ServiceModel" value="Critical, Error"/>
</switches>
<sharedListeners>
<add initializeData="Diagnostics.svclog" type="System.Diagnostics.XmlWriterTraceListener" name="xml">
<filter type="System.Diagnostics.EventTypeFilter" initializeData="Critical, Error"/>
</add>
</sharedListeners>
<trace autoflush="true" />
<add initializeData="Diagnostics.svclog"
type="My.Namespace.MyXmlWriterTraceListener, MyAssembly"
name="xml">
...
</add>