我试图在asp.net MVC5 c#中使用log4net记录错误。
出于测试目的,我在application_start中配置了log4net,并从家庭控制器初始化记录器和日志错误。出于某种原因,log4net仅在我启动应用程序时第一次记录错误。当我离开家庭控制器并再次回到家庭控制器时,没有记录错误。我把我的日志代码放在HomeController索引中。使用断点调试时,可以访问日志记录代码,但不记录日志。
我错过了什么吗?
这是我的log4net配置。
将Global.asax Application_Start()中的log4net配置为
log4net.Config.XmlConfigurator.Configure();
在我的家庭控制器索引(For Testing)中,我将错误记录为
var logger = log4net.LogManager.GetLogger(this.GetType());
Random rnd = new Random();
int rndint = rnd.Next(52);
logger.Error(rndint.ToString());
我的配置文件使用标准log4net AdoNetAppender
,缓冲区大小= 100,级别设置为WARN
答案 0 :(得分:1)
AdoNetAppender
批处理插入数据库的日志语句。如果将缓冲区大小设置为1,您将看到日志语句立即添加到表中。
最好的办法是使用1
的缓冲区大小进行本地开发,如果性能受到关注并且使用大量日志记录,则在部署到生产时使用更大的值。