NET问答: Log4Net 无法将日志写入到 log 文件的求助.....
咨詢(xún)區(qū)
john84:
我在一個(gè)小項(xiàng)目中用上了 Log4Net,程序跑起來(lái)后沒(méi)有任何日志寫(xiě)入到 log 文件,可能是我的 log appender 配的有問(wèn)題,尷尬????,大家看看我這樣配的有問(wèn)題嗎?
web.config 完整的配置如下。
<configSections><p?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>然后在 global.ascx 中是這樣配置的。
ILog?logger?=?LogManager.GetLogger(typeof(MvcApplication));然后是 Application_Start 方法。
logger.Info("Starting?the?application...");為啥消息 Starting the application... ?沒(méi)有寫(xiě)入到 log 中哈。。。
回答區(qū)
Andreas Paulsson:
你還缺了一個(gè)調(diào)用
log4net.Config.XmlConfigurator.Configure();把它放到一個(gè)代碼可以執(zhí)行到的地方,比如:Global.asax
void?Application_Start(object?sender,?EventArgs?e)? {//?Code?that?runs?on?application?startup//?Initialize?log4net.log4net.Config.XmlConfigurator.Configure(); }你也可以放到 AssemblyInfo.cs 的尾部。
[assembly:?log4net.Config.XmlConfigurator(Watch?=?true)]Ayub:
確保 log4net.config 的屬性面板上一定要設(shè)置為 Copy always。
Rahatur:
在我的場(chǎng)景下,我需要給 IIS_IUSRS 賦予一個(gè)讀寫(xiě) logfile 的權(quán)限。
點(diǎn)評(píng)區(qū)
首先說(shuō)一下為啥要精選本題,因?yàn)榇罄袀兲岬降目?#xff0c;我都踩到了。。。后來(lái)不得已,將 操作步驟 寫(xiě)入到 印象筆記 中,搞笑的是最近部署一個(gè)新加坡項(xiàng)目時(shí),剛好就遇到了當(dāng)前 IIS 用戶(hù)沒(méi)有寫(xiě)入權(quán)限,各種報(bào)錯(cuò),也是尷尬。
原文鏈接:hhttps://stackoverflow.com/questions/3618380/log4net-does-not-write-the-log-in-the-log-file
總結(jié)
以上是生活随笔為你收集整理的NET问答: Log4Net 无法将日志写入到 log 文件的求助.....的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。
- 上一篇: Asp.Net Core 5 REST
- 下一篇: CAP-分布式事务的解决方案