Log4Net总结
- Log4Net是用來記錄日志的,可以將程序運行過程中的信息輸出到一些地方(文件、數據庫、EventLog等),日志就是程序的黑匣子,可以通過日志查看系統的運行過程,從而發現系統的問題。日志的作用:將運行過程的步驟、成功失敗記錄下來,將關鍵性的數據記錄下來分析系統問題所在。Log4J。
- 看如鵬站內搜索的日志文件。對于網站來講,不能把異常信息顯示給用戶,異常信息只能記錄到日志,出了問題把日志文件發給開發人員,就能知道問題所在。
- ?配置Log4Net環境
- Log4Net相關概念(*)
?
???? Log4Net下載地址
?
注意:在VS2010中的控制臺項目引用Log4Net的時候要將項目的“目標框架”改為非“Client Profile”。
1、Log4Net配置
<configuration>
? <configSections>
??? <section name="log4net" type="log4net.Config.Log4NetConfigurationSectionHandler, log4net"/>
? </configSections>
? <log4net>
??? <!-- Define some output appenders -->
??? <appender name="RollingLogFileAppender" type="log4net.Appender.RollingFileAppender">
????? <file value="test.txt"/>
????? <appendToFile value="true"/>
????? <maxSizeRollBackups value="10"/>
????? <maximumFileSize value="1024KB"/>
????? <rollingStyle value="Size"/>
????? <staticLogFileName value="true"/>
????? <layout type="log4net.Layout.PatternLayout">
??????? <conversionPattern value="%date [%thread] %-5level %logger - %message%newline"/>
????? </layout>
??? </appender>
??? <root>
????? <level value="DEBUG"/>
????? <appender-ref ref="RollingLogFileAppender"/>
??? </root>
? </log4net>
</configuration>
?
?
2、在 Global.asax 中的Applaction_Start()加入log4net.Config.XmlConfigurator.Configure();
?
?
3、頁面測試:
?
using log4net;
namespace Log4NetTest
{
??? public partial class Default : System.Web.UI.Page
??? {
??????? //一般一個類用一個ILog的靜態實例即可
??????? private static ILog logger = LogManager.GetLogger(typeof(Default));
??????? protected void Page_Load(object sender, EventArgs e)
??????? {???????????
??????? }
?
??????? protected void btnLog_Click(object sender, EventArgs e)
??????? {
??????????? //GetLogger一般傳遞代碼所在類的類名
??????????? //LogManager.GetLogger(typeof(Default)).Debug("我的第一條日志");
??????????? //ILog logger = LogManager.GetLogger(typeof(Default));
??????????? logger.Debug("我的第一條日志");//輸出調試信息
??????????? logger.Warn("服務器內存只有20MB了");
??????????? try
??????????? {
??????????????? int i = Convert.ToInt32(TextBox1.Text);
??????????? }
??????????? catch (Exception ex)
??????????? {
??????????????? //如果發生了異常,推薦吧異常對象做為第二個參數,這樣方便排查錯誤。
??????? ????????logger.Error("用戶輸入錯誤: "+TextBox1.Text ,?? ex);
??????????? }
??????? }
??? }
}
轉載于:https://www.cnblogs.com/qiuyueguangxuan/p/4020124.html
總結
- 上一篇: Kindeditor图片上传Contro
- 下一篇: 八皇后问题 回溯方法