Log4Net总结
- Log4Net是用來(lái)記錄日志的,可以將程序運(yùn)行過(guò)程中的信息輸出到一些地方(文件、數(shù)據(jù)庫(kù)、EventLog等),日志就是程序的黑匣子,可以通過(guò)日志查看系統(tǒng)的運(yùn)行過(guò)程,從而發(fā)現(xiàn)系統(tǒng)的問(wèn)題。日志的作用:將運(yùn)行過(guò)程的步驟、成功失敗記錄下來(lái),將關(guān)鍵性的數(shù)據(jù)記錄下來(lái)分析系統(tǒng)問(wèn)題所在。Log4J。
- 看如鵬站內(nèi)搜索的日志文件。對(duì)于網(wǎng)站來(lái)講,不能把異常信息顯示給用戶(hù),異常信息只能記錄到日志,出了問(wèn)題把日志文件發(fā)給開(kāi)發(fā)人員,就能知道問(wèn)題所在。
- ?配置Log4Net環(huán)境
- Log4Net相關(guān)概念(*)
?
???? Log4Net下載地址
?
注意:在VS2010中的控制臺(tái)項(xiàng)目引用Log4Net的時(shí)候要將項(xiàng)目的“目標(biāo)框架”改為非“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、頁(yè)面測(cè)試:
?
using log4net;
namespace Log4NetTest
{
??? public partial class Default : System.Web.UI.Page
??? {
??????? //一般一個(gè)類(lèi)用一個(gè)ILog的靜態(tài)實(shí)例即可
??????? 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一般傳遞代碼所在類(lèi)的類(lèi)名
??????????? //LogManager.GetLogger(typeof(Default)).Debug("我的第一條日志");
??????????? //ILog logger = LogManager.GetLogger(typeof(Default));
??????????? logger.Debug("我的第一條日志");//輸出調(diào)試信息
??????????? logger.Warn("服務(wù)器內(nèi)存只有20MB了");
??????????? try
??????????? {
??????????????? int i = Convert.ToInt32(TextBox1.Text);
??????????? }
??????????? catch (Exception ex)
??????????? {
??????????????? //如果發(fā)生了異常,推薦吧異常對(duì)象做為第二個(gè)參數(shù),這樣方便排查錯(cuò)誤。
??????? ????????logger.Error("用戶(hù)輸入錯(cuò)誤: "+TextBox1.Text ,?? ex);
??????????? }
??????? }
??? }
}
轉(zhuǎn)載于:https://www.cnblogs.com/qiuyueguangxuan/p/4020124.html
總結(jié)
- 上一篇: Kindeditor图片上传Contro
- 下一篇: 八皇后问题 回溯方法