Windows Form 程式之Log4Net

來源:互聯網
上載者:User

原文參考:http://www.cnblogs.com/dragon/archive/2005/03/24/124254.html

 

今天離離開公司還有一個多星期,為了自己做的那部分系統更加完善,用LOG4NET做了日誌功能。

1.添加引用

添加log4net(下載:http://logging.apache.org/log4net/download.html)引用,將DLL或者原始碼工程引用即可

2.修改或者增加app.config

項目預設有個增加一個app.config檔案,如果沒有需要增加.

當程式編譯後,會在你的執行目錄下產生一個<你的程式集名>.exe.config檔案內容和本檔案一樣

3.編輯app.config檔案

添加紅色部分如下:

 

<?xml version="1.0" encoding="utf-8" ?>
<configuration>
  <!--序列化對象參數-->
  <configSections>
    <section name="log4net" type="log4net.Config.Log4NetConfigurationSectionHandler, log4net-net-1.0" />
  </configSections>
    
  <!--資料庫連接串-->
  <connectionStrings>
    <add name="ConnStr" connectionString="server=130.251.9.132;database=RoomManage;uid=sa;pwd=sa123;" providerName="System.Data.SqlClient" />
  </connectionStrings>

  <!--系統初始化需要的參數-->
  <appSettings>
    <add key="Conn"    value=" 屬性測試" />
    <add key="User"    value="username ,id " />
  </appSettings>

 

 <!--LOG4NET配置參數檔案-->
  <log4net>
    <root>
      <level value="ALL" />
      <appender-ref ref="RollingFileAppender" />
    </root>

    <appender name="RollingFileAppender" type="log4net.Appender.RollingFileAppender">
      <!--記錄檔名-->
      <file value="/log/roommanage.log"/>
      <!--是否在檔案中追加-->
      <appendToFile value="true"/>
      <!--按照檔案的大小進行變換記錄檔-->
      <rollingStyle value="Size"/>
      <!--最大變換數量-->
      <maxSizeRollBackups value="5"/>
      <!--最大檔案大小-->
      <maximumFileSize value="10MB"/>
      <!--記錄檔名是否為靜態-->
      <staticLogFileName value="true"/>
      <layout type="log4net.Layout.PatternLayout">
        <conversionPattern value="%date [%thread] %-5level %logger [%property{NDC}] - %message%newline"/>
      </layout>
    </appender>
  </log4net>

</configuration>

這裡請注意<configuration> 和<configurations>標籤不能少

4.編輯Assembly.cs檔案

添加如下內容:
[assembly:log4net.Config.DOMConfigurator( ConfigFileExtension="config",Watch=true)]

5.在程式裡添加如下代碼
log4net.ILog log = log4net.LogManager.GetLogger("LoginLogger");
log.Debug("login succed!");

LoginLogger這裡的可以區分不同功能的日誌資訊,名稱可改!具體參數含義參考官方樣本。

PS:

這是最簡單的日誌了,我實現的是5個日誌(每個10M)檔案輪流進行讀寫,寫滿繼續迴圈下一個,都寫滿後再從第一個開始寫日誌,類似ORACLE中的非歸檔模式下的REDO記錄檔的寫入方式。

相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.