[英]How do I write a line to a log4net log file, regardless which level is set?
無論當時設置了哪種日志級別,如何將條目寫入log4net文件? 我可以確保添加一行的唯一方法是添加一個“致命”條目。 這很丑陋,如果將級別設置為“關”,甚至會失敗。
例如:我想記錄該日志級別已更改為“錯誤”。 如果我要使用:
Logger.Log.Info($"LogLevel set to {logLevelText}");
然后,如果僅將級別設置為“錯誤”,則不會寫入此行。
那么,有沒有辦法在日志中寫一行呢?
不。 沒有日志級別,您將無法編寫條目。 但是,您可以在運行時操縱日志級別。 因此,您可以隨時將日志級別設置為所需的任何級別,只是確保您的消息已寫入日志,然后恢復原始級別。 有關詳細信息,請參見此SO線程 。
這就是我在項目中使用它的方式。 希望對您有所幫助。
private static readonly log4net.ILog rootlog = log4net.LogManager.GetLogger("rootLogger");
rootlog.Info(string.Format("Service [{0}] has started.", this.ServiceName)); // info msg
rootlog.Error(string.Format("Get Tasks Unsuccessfull: {0}", response.MessageValue)); // error msg
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.