log4net写成日期文件的配置,

log4net日志配置与效果展示

#配置

1.configuration appSettings
<add key="log4net.Config" value="App_Data\Config\log4net.config" />

2.Global.asax启动调用下,Log4NetRegister()


private static void Log4NetRegister()
{
var log4netFile = System.Web.HttpContext.Current.Server.MapPath("/")+ System.Configuration.ConfigurationManager.AppSettings["log4net.Config"];
if (!System.IO.File.Exists(log4netFile)) return;
log4net.Config.XmlConfigurator.ConfigureAndWatch(
new System.IO.FileInfo(log4netFile)
);
}

 

3.App_Data\Config\log4net.config

<?xml version="1.0" encoding="utf-8" ?>
<log4net>

<appender name="LogFileAppender" type="log4net.Appender.RollingFileAppender">
<param name="File" value="App_Data\Logs\" />
<param name="AppendToFile" value="true" />
<param name="DatePattern" value="yyyy-MM-dd.LOG" />
<param name="StaticLogFileName" value="false" />
<param name="RollingStyle" value="Date" />
<!--最小锁定模型以允许多个进程可以写入同一个文件-->
<param name="LockingModel" value="log4net.Appender.FileAppender.MinimalLock" />
<layout type="log4net.Layout.PatternLayout">
<param name="ConversionPattern" value="%d [%t] %-5p %c [%M] - Line %L:%m%n" />
</layout>
</appender>


<root>
<level value="ALL" />
<!--<appender-ref ref="ADONetAppender" />-->
<appender-ref ref="LogFileAppender" />
</root>
</log4net>

 

 

#效果:

每天日志: App_Data\Logs\yyyy-MM-dd.LOG

内容如:2015-05-07 16:30:52,896 [12] INFO  WebApi.Controllers.UserOrderController [Test1] - Line 394:Test1()

 

 

 

 

 

 

 

 

 

 

#其他,杂-----------




if (string.IsNullOrEmpty(date)) date = DateTime.Now.ToString("yyyy-MM-dd");
var logfile = HttpContext.Current.Server.MapPath("/App_Data/Logs/") + date + ".LOG";
//HttpContextBase
//httpContextBase.ApplicationInstance.Context;
var content = "";
if (!System.IO.File.Exists(logfile)) Erp.HttpResponseStatic.GetOriginalMessage("不存在");
try
{
var fs = new System.IO.FileStream(logfile, System.IO.FileMode.Open, System.IO.FileAccess.Read, System.IO.FileShare.ReadWrite);

var sr = new System.IO.StreamReader(fs, System.Text.Encoding.Default);

//StringBuilder sb = new StringBuilder();
var lines = new List<string>();
while (!sr.EndOfStream)
{
lines.Insert(0, sr.ReadLine() + "\r\n");
if (lines.Count > 100) lines.RemoveAt(lines.Count - 1);
}

return Erp.HttpResponseStatic.GetOriginalMessage(string.Concat(lines));
}
catch (Exception ex)
{
return Erp.HttpResponseStatic.GetOriginalMessage(ex.Message);
}

转载于:https://www.cnblogs.com/ijunxiong/articles/10829842.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值