[英]NLog, how to execute code on logging ERROR and higher?
我對 NLog 很陌生,我想在日志完成后執行一些代碼。
基本上,我有一個RichTextBoxTarget
。 RichTextBox
默認是隱藏的。 我想在錯誤日志或更高版本完成時顯示它。
如果可能的話,我怎么能做到這一點?
這個RichTextBox
的目的到底是什么?
如果您想在輸入錯誤時顯示錯誤,那么ErrorProvider
會更好。
如果您想將錯誤記錄也捕獲到此 RTB 中以及說文件中,那么您可以編寫自己的目標,注冊它,然后它可以處理事件。
聽起來你想讓 2 個目標監聽事件:
所以訣竅就是設置兩個目標:
<nlog>
<targets>
<target name="richtext" xsi:type="RichTextBox" />
<target name="showrichtext" xsi:type="MethodCall" className="SomeNamespace.MyClass, MyAssembly" methodName="LogMethod" />
</targets>
<rules>
<logger name="*" minlevel="Debug" writeTo="richtext" />
<logger name="*" minlevel="Error" writeTo="showrichtext" />
</rules>
</nlog>
並為 MethodCall-Target 調用一個合適的 static 方法。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.