Asp.net

Log4net 不會將日誌寫入日誌文件

  • September 1, 2010

我使用 Log4net 創建了一個簡單的場景,但似乎我的日誌附加程序不起作用,因為消息沒有添加到日誌文件中。

我在 web.config 文件中添加了以下內容:

<configSections>
   <section name="log4net" type="log4net.Config.Log4NetConfigurationSectionHandler, log4net" requirePermission="false"/>        
</configSections>

<log4net>
   <appender name="LogFileAppender" type="log4net.Appender.FileAppender">
           <file value="D:\MyData\Desktop\LogFile.txt" />
           <appendToFile value="true" />
           <encoding value="utf-8" />
           <layout type="log4net.Layout.SimpleLayout" />
   </appender>


   <root>
       <level value="INFO" />
       <appender-ref ref="LogFileAppender" />
   </root>
</log4net>

在我添加的全域 ASAX 文件中:

ILog logger = LogManager.GetLogger(typeof(MvcApplication));

在 Application_Start 方法中:

logger.Info("Starting the application...");

為什麼沒有將測試日誌“正在啟動應用程序…”添加到日誌文件中?

你打電話嗎

log4net.Config.XmlConfigurator.Configure();

在某個地方讓 log4net 讀取您的配置?例如在 Global.asax 中:

void Application_Start(object sender, EventArgs e) 
{
   // Code that runs on application startup

   // Initialize log4net.
   log4net.Config.XmlConfigurator.Configure();
}

引用自:https://stackoverflow.com/questions/3618380