標籤:style class blog code http tar
下載
http://files.cnblogs.com/crazyair/log4net.zip
1 在web項目中建立一個 Log4Net.config
<?xml version="1.0" encoding="utf-8"?><!-- 注意: 除了手動編輯此檔案以外,您還可以使用 Web 管理工具來配置應用程式的設定。可以使用 Visual Studio 中的“網站”->“Asp.Net 配置”選項。設定和注釋的完整列表在 machine.config.comments 中,該檔案通常位於 /Windows/Microsoft.Net/Framework/v2.x/Config 中--><configuration> <configSections> <section name="log4net" type="System.Configuration.IgnoreSectionHandler"/> </configSections> <log4net> <logger name="ikangdentalLog"> <!--control log level: ALL|DEBUG|INFO|WARN|ERROR|FATAL|OFF--> <!--如果沒有定義LEVEL的值,則預設為DEBUG--> <level value="ALL" /> <appender-ref ref="SmtpAppenderAX"></appender-ref> <appender-ref ref="FileAppenderAX"></appender-ref> </logger> <appender name="SmtpAppenderAX" type="log4net.Appender.SmtpAppender"> <to value="[email protected]"></to> <from value="[email protected]" /> <subject value="AX‘Test Log Message" /> <smtpHost value="mail.eshinfo.com" /> <username value="eshinfo" /> <password value="eshinfo" /> <bufferSize value="2048" /> <!--超長部分是否丟棄--> <lossy value="false" /> <!--輸出層級在WARN和OFF之間的日誌--> <filter type="log4net.Filter.LevelRangeFilter"> <param name="LevelMin" value="WARN" /> <param name="LevelMax" value="OFF" /> </filter> <layout type="log4net.Layout.PatternLayout"> <conversionPattern value="%newline%date [%thread] %-5level %logger [%property{NDC}] : %newline%message%newline" /> </layout> </appender> <appender name="FileAppenderAX" type="log4net.Appender.RollingFileAppender"> <!--絕對路徑--> <file value="D://AX.txt"></file> <!--相對路徑,在項目的根目錄下--> <!--以最後一個路徑為準,所以上面的絕對路徑下不會寫日誌--> <file value="./Log/AX.txt"></file> <!--按照當天記錄--> <appendToFile value="true" /> <rollingStyle value="Date" /> <!--<datePattern value="yyyyMMdd-HHmm" />--> <datePattern value="yyyyMMdd" /> <!--防止多線程時不能寫Log,官方說線程非安全--> <!--實際使用時,本地測試正常,部署後有不能寫日誌的情況--> <lockingModel type="log4net.Appender.FileAppender+MinimalLock" /> <appendToFile value="true" /> <!--可以為:Once|Size|Date|Composite--> <!--Composite為Size和Date的組合--> <rollingStyle value="composite" /> <!--日誌最大個數,都是最新的--> <!--rollingStyle節點為Date時,該節點不起作用--> <!--rollingStyle節點為Size時,只能有value個日誌--> <!--rollingStyle節點為Composite時,每天有value個日誌--> <maxSizeRollBackups value="10" /> <!--當備份檔案時,為檔案名稱加的尾碼--> <!--尾碼為*.txt時,例:AX.txt_2008-07-24.PxP 應該是程式上的一個bug--> <!--尾碼為*.TXT時,例:AX.txt_2008-07-25.TXT--> <datePattern value="_yyyy-MM-dd.TXT" /> <!--可用的單位:KB|MB|GB--> <!--不要使用小數,否則會一直寫入當前日誌--> <maximumFileSize value="1MB" /> <!--置為true,當前最新記錄檔名永遠為file節中的名字--> <staticLogFileName value="true" /> <!--輸出層級在INFO和ERROR之間的日誌--> <filter type="log4net.Filter.LevelRangeFilter"> <param name="LevelMin" value="INFO" /> <param name="LevelMax" value="ERROR" /> </filter> <!--必須結合起來用,第一個只過濾出WARN,第二個拒絕其它其它日誌輸出--> <filter type="log4net.Filter.LevelMatchFilter"> <param name="LevelToMatch" value="WARN" /> </filter> <filter type="log4net.Filter.DenyAllFilter" /> <layout type="log4net.Layout.PatternLayout"> <conversionPattern value="%date [%thread] %-5level %logger [%ndc] - %message%newline" /> </layout> </appender> </log4net></configuration>
類庫 common 中AssemblyInfo.cs 中加入
[assembly: log4net.Config.XmlConfigurator(ConfigFile = "log4net.config", Watch = true)]
建立一個類
public class Log { private static log4net.ILog log = log4net.LogManager.GetLogger("ikangdentalLog"); public static void Debug(string message) { if (log.IsDebugEnabled) { log.Debug(message); } } public static void Debug(System.Exception ex1) { if (log.IsDebugEnabled) { log.Debug(ex1.Message.ToString() + "/r/n" + ex1.Source.ToString() + "/r/n" +ex1.TargetSite.ToString() + "/r/n" + ex1.StackTrace.ToString()); } } public static void Error(string message) { if (log.IsErrorEnabled) { log.Error(message); } } public static void Fatal(string message) { if (log.IsFatalEnabled) { log.Fatal(message); } } public static void Info(string message) { if (log.IsInfoEnabled) { log.Info(message); } } public static void Warn(string message) { if (log.IsWarnEnabled) { log.Warn(message); } } }
引用 log4net
用的時候 Common.Log.Info("1111");
2 一種簡單的記錄日誌的
public class Log { /// <summary> /// 寫日誌(用於跟蹤) /// </summary> public static void WriteLog(string strMemo) { string filename = HttpContext.Current.Request.PhysicalApplicationPath; //儲存的路徑 string time = DateTime.Now.ToString("yyyy-MM-dd"); filename = filename + "/Log/" + " " + "" + time + ".txt"; StreamWriter sr = null; try { if (!File.Exists(filename)) { sr = File.CreateText(filename); } else { sr = File.AppendText(filename); } sr.WriteLine(strMemo); } catch { } finally { if (sr != null) sr.Close(); } } }
用的時候 Log.WriteLog("XXX");
下載 http://files.cnblogs.com/crazyair/log4net.zip