第一個遇到的機制是:Log
我選用了Apache的Log4net,它是一個用來處理Log的open source的元件,它可以輸出為各種不同的目的物件,例如文字檔、EMail、DB、...等)
想要了解更多的人,可以到Apache的網站上看看說明摟~~
也有Java的版本!
http://logging.apache.org/
那接下來就由我來跟各位介紹一下,如何安裝與使用它~~
Configuring Log4net:
Step 1:下載log4net.dll。(請自行至下列網址下載最新版本。)
http://logging.apache.org/log4net/download.html
Step 2:將log4net.dll加入Web Project的參考。
Step 3:新增一個Global.asax的檔案,然的的,如果已經有了,也就不用新增摟~~
在該檔案內的Application_Start加入下列程式碼:
void Application_Start(object sender, EventArgs e)
{
// 應用程式啟動時執行的程式碼
log4net.Config.XmlConfigurator.Configure();
}
Step 4:在Config的"configSections"區塊中,加入下面section:
<section name="log4net" type="log4net.Config.Log4NetConfigurationSectionHandler,log4net"/>
Step 5:在Config中,新增一個"
<log4net>
<appender name="RollingFileAppender" type="log4net.Appender.RollingFileAppender">
<file value="LogFiles/yccs.web.log@"/>
<staticLogFileName value="false"/>
<appendToFile value="true"/>
<rollingStyle value="Date"/>
<datePattern value="yyyy-MM-dd"/>
<layout type="log4net.Layout.PatternLayout">
<conversionPattern value="%date %-5level %logger %file%line [%property{NDC}]%newline %message%newline"/>
</layout>
</appender>
<root>
<!--
設定寫log的層級
ALL 全寫
DEBUG Debug用的
INFO 資訊 (此層級用來寫SQL Log)
WARN 警告
ERROR 錯誤
FATAL 毀滅性錯誤
OFF 關閉
-->
<level value="ALL"/>
<appender-ref ref="RollingFileAppender"/>
</root> </log4net>
<file value="LogFiles/yccs.web.log@"/>:指定輸出的檔案路徑語名稱。
<staticLogFileName value="false"/>:檔名是否要變動。
<datePattern value="yyyy-MM-dd"/>:檔名變動的格式。
<level value="ALL"/>:撰寫log的層級。
這樣就大功告成了基本安裝瞜~~
那皆來我們該如何寫Log到LogFile呢?
ILog logger = LogManager.GetLogger("RollingFileAppender");
logger.Error("WebUtility.GetAppSettings", ex);
RollingFileAppender是Web Config檔中,設定的appender的name。兩個要相對應。
沒有留言:
張貼留言