有没有办法使用EventLogAppender指定事件查看器日志的大小?
或者我是否需要使用C#/ Windows Api来获取记录器?
默认情况下,它设置为1028KB但我需要它为10MB。
答案 0 :(得分:0)
使用它来解决它:
public static void setEventLogAppenderMaximumSize(log4net.ILog aLogger)
{
log4net.Appender.IAppender[] logAppenders = aLogger.Logger.Repository.GetAppenders();
if (logAppenders != null && logAppenders.Length > 0)
{
string logName = ((log4net.Appender.EventLogAppender)logAppenders[0]).LogName;
EventLog[] eventLogs = EventLog.GetEventLogs();
foreach (EventLog e in eventLogs)
{
if (e.Log == logName)
{
int newLogSizeInKB = 102400; //10MB
if (e.MaximumKilobytes < newLogSizeInKB)
{
e.MaximumKilobytes = newLogSizeInKB;
}
return;
}
}
}
}