初始化
This commit is contained in:
124
Face.Log4Net/ExceptionLogMessage.cs
Normal file
124
Face.Log4Net/ExceptionLogMessage.cs
Normal file
@@ -0,0 +1,124 @@
|
||||
using log4net.Core;
|
||||
using log4net.Layout.Pattern;
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.IO;
|
||||
using System.Linq;
|
||||
using System.Text;
|
||||
using System.Threading.Tasks;
|
||||
|
||||
namespace Face.Log4Net
|
||||
{
|
||||
/// <summary>
|
||||
/// 一般操作
|
||||
/// </summary>
|
||||
public class ExceptionLogMessage
|
||||
{
|
||||
/// <summary>
|
||||
/// 操作人
|
||||
/// </summary>
|
||||
public string Operationer { get; set; }
|
||||
/// <summary>
|
||||
/// 客户端IP
|
||||
/// </summary>
|
||||
public string IP { get; set; }
|
||||
/// <summary>
|
||||
/// 浏览器请求头
|
||||
/// </summary>
|
||||
public string Header { get; set; }
|
||||
/// <summary>
|
||||
/// 请求地址
|
||||
/// </summary>
|
||||
public string Url { get; set; }
|
||||
/// <summary>
|
||||
/// 功能点名称
|
||||
/// </summary>
|
||||
public string ActionName { get; set; }
|
||||
|
||||
public Exception exception { get; set; }
|
||||
|
||||
public override string ToString()
|
||||
{
|
||||
return string.Format("功能点:{0} \n操作者:{1} \nIP:{2} \n头部信息:{3} \n来自页面:{4} 错误信息:{5}", ActionName, Operationer, IP, Header, Url, exception.ToString());
|
||||
}
|
||||
}
|
||||
public class ExceptionLayout : log4net.Layout.PatternLayout
|
||||
{
|
||||
public ExceptionLayout()
|
||||
{
|
||||
this.AddConverter("exceptionMessage", typeof(ExceptionPatternConverter));
|
||||
this.AddConverter("ActionName", typeof(ActionNameExceptionPatternConverter));
|
||||
this.AddConverter("Operationer", typeof(OperationerExceptionPatternConverter));
|
||||
this.AddConverter("IP", typeof(IPExceptionPatternConverter));
|
||||
this.AddConverter("Header", typeof(HeaderExceptionPatternConverter));
|
||||
this.AddConverter("Url", typeof(UrlExceptionPatternConverter));
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
internal sealed class ActionNameExceptionPatternConverter : PatternLayoutConverter
|
||||
{
|
||||
override protected void Convert(TextWriter writer, LoggingEvent loggingEvent)
|
||||
{
|
||||
ExceptionLogMessage logMessage = loggingEvent.MessageObject as ExceptionLogMessage;
|
||||
|
||||
if (logMessage != null)
|
||||
writer.Write(logMessage.ActionName);
|
||||
}
|
||||
}
|
||||
|
||||
internal sealed class OperationerExceptionPatternConverter : PatternLayoutConverter
|
||||
{
|
||||
override protected void Convert(TextWriter writer, LoggingEvent loggingEvent)
|
||||
{
|
||||
ExceptionLogMessage logMessage = loggingEvent.MessageObject as ExceptionLogMessage;
|
||||
|
||||
if (logMessage != null)
|
||||
writer.Write(logMessage.Operationer);
|
||||
}
|
||||
}
|
||||
|
||||
internal sealed class IPExceptionPatternConverter : PatternLayoutConverter
|
||||
{
|
||||
override protected void Convert(TextWriter writer, LoggingEvent loggingEvent)
|
||||
{
|
||||
ExceptionLogMessage logMessage = loggingEvent.MessageObject as ExceptionLogMessage;
|
||||
|
||||
if (logMessage != null)
|
||||
writer.Write(logMessage.IP);
|
||||
}
|
||||
}
|
||||
|
||||
internal sealed class HeaderExceptionPatternConverter : PatternLayoutConverter
|
||||
{
|
||||
override protected void Convert(TextWriter writer, LoggingEvent loggingEvent)
|
||||
{
|
||||
ExceptionLogMessage logMessage = loggingEvent.MessageObject as ExceptionLogMessage;
|
||||
|
||||
if (logMessage != null)
|
||||
writer.Write(logMessage.Header);
|
||||
}
|
||||
}
|
||||
|
||||
internal sealed class UrlExceptionPatternConverter : PatternLayoutConverter
|
||||
{
|
||||
override protected void Convert(TextWriter writer, LoggingEvent loggingEvent)
|
||||
{
|
||||
ExceptionLogMessage logMessage = loggingEvent.MessageObject as ExceptionLogMessage;
|
||||
|
||||
if (logMessage != null)
|
||||
writer.Write(logMessage.Url);
|
||||
}
|
||||
}
|
||||
|
||||
internal sealed class ExceptionPatternConverter : PatternLayoutConverter
|
||||
{
|
||||
override protected void Convert(TextWriter writer, LoggingEvent loggingEvent)
|
||||
{
|
||||
ExceptionLogMessage logMessage = loggingEvent.MessageObject as ExceptionLogMessage;
|
||||
|
||||
if (logMessage != null)
|
||||
writer.Write(logMessage.exception.ToString());
|
||||
}
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user