16
爲了能夠跟蹤哪些類/方法已寫入日誌,我正在使用NLog並遵循建議的模式,即在每個類上都有一個日誌聲明。我發現這對於每次寫入日誌都有一個頂層的「堆棧跟蹤」非常有用。在NLog中添加方法名稱
我的代碼中使用看起來像這樣:
class SomeClass {
private static readonly Logger logger = LogManager.GetCurrentClassLogger();
void DoStuff() {
logger.Debug("stuff"); }
}
我最近有要求我的單個項目寫入到3個單獨的日誌文件,而要做到這一點,我添加了多個記錄器和目標,那麼具體: https://stackoverflow.com/a/21711838/191206
但是,現在在我的日誌文件中,我丟失了類名稱。現在它只是寫入我在NLog.config中指定的日誌名稱。我曾與一個電話視爲簡單的添加方法名自己
System.Reflection.MethodBase.GetCurrentMethod(); // use Name property
或使用的東西在別人的思考像this
不過,我想知道如果NLOG有一些內置到這一點,我失蹤? Debug()方法我只能看到寫入字符串的能力,參數&可選擇格式化。
這是內置到NLog中的嗎?
你檢查過['$ {調用點}'佈局渲染器](https://github.com/nlog/nlog/wiki/Callsite-Layout-Renderer)? – nemesv
就是這樣 - 你可以用這個解決方案回答這個問題,所以我可以給你適當的信用?謝謝 – dferraro