本文整理匯總了C#中log4net.Core.LoggingEvent.GetLoggingEventProperty方法的典型用法代碼示例。如果您正苦於以下問題:C# LoggingEvent.GetLoggingEventProperty方法的具體用法?C# LoggingEvent.GetLoggingEventProperty怎麽用?C# LoggingEvent.GetLoggingEventProperty使用的例子?那麽, 這裏精選的方法代碼示例或許可以為您提供幫助。您也可以進一步了解該方法所在類log4net.Core.LoggingEvent
的用法示例。
在下文中一共展示了LoggingEvent.GetLoggingEventProperty方法的1個代碼示例,這些例子默認根據受歡迎程度排序。您可以為喜歡或者感覺有用的代碼點讚,您的評價將有助於係統推薦出更棒的C#代碼示例。
示例1: Format
public override void Format(TextWriter writer, LoggingEvent loggingEvent) {
// check arguments
if (loggingEvent == null) return;
if (loggingEvent.MessageObject == null && loggingEvent.RenderedMessage == null) return;
// get logger id
string loggerId = loggingEvent.GetLoggingEventProperty("__objectId");
// prepare stuff
string message = loggingEvent.MessageObject == null ? loggingEvent.RenderedMessage : loggingEvent.MessageObject.ToString();
string info = loggingEvent.GetLoggingEventProperty("__extendedInfo");
if (info != null) {
message = message + " " + info;
}
string[] lines = message.Split(new[] { Environment.NewLine }, StringSplitOptions.RemoveEmptyEntries);
string header = string.Format("{0} [{1}] ({3}|{4}|{5}) {2} : ", loggingEvent.TimeStamp.ToString("dd-MM-yyyy hh:mm:ss,fff"), loggingEvent.Level.DisplayName.PadLeft(5, ' '), this.LoggerName(loggingEvent.LoggerName), Thread.CurrentThread.GetHashCode().ToString(CultureInfo.InvariantCulture).PadLeft(2, ' '), loggerId.PadLeft(2), Thread.CurrentPrincipal != null ? Thread.CurrentPrincipal.Identity.Name : "unknown");
const string FILLER = "\t";
for (int i = 0; i < lines.Length; i++) {
if (i == 0) {
writer.Write(header);
} else {
writer.Write(FILLER);
}
writer.WriteLine(lines[i]);
}
}