_logger.DebugFormat("Comment load single comment by commentId :{0}", Id);try {var comment = _commentService.Get(Id);
return FormatResult(comment);}catch(Exception e){_logger.Error(e.Message);}return FormatResult(InCityErrorMessage.INCITY_COMMENT_LOAD_FAILED);
} 2.正確使用Log的級別 1. 函數入口處的Log和壹般調試的Log使用debug級別,如上面的代碼片段. _logger.DebugFormat("Comment load single comment by commentId :{0}", Id); 2. 執行某項操作之後,使用info級別。例如支付成功,註冊用戶等。 _logger.InfoFormat("Add order complete, orderId{0}, tradeNo:{1}, buyCount:{2}, unitPrice:{3}, orderDate:{4}, orderState:{5}", orderContract.Id, orderContract.TradeNo, orderContract.BuyCount, orderContract.Price, orderContract.OrderDate, orderContract.OrderStateText); 3. 異常處使用Error,或者明顯出錯的地方 _logger.Error(e.Message); 4. 發生嚴重地錯誤,導致破壞業務流程,例如短信發送或者訂單處理,或者程序Crash.public virtual bool Send(BaseSMSContract contract) {try {_logger.Debug("In SMSService Send");
//....... }
catch (Exception e){_logger.Fatal(e.Message);}return false;
} 3.根據級別不同使用將Log輸出到文件,數據庫 能夠利用現有的框架來寫log那是非常方便了。我們項目中使用的是asp.net mvc框架,使用和Log4net很好地實現了log。 下面介紹下具體的步驟: 1.下載Common.Logging,Common.Logging.Log4net,log4net三個dll, 並在項目中引用它們。