internal void Log() { if (LogLevel < LoggerBase.FilterLevel) { return; } if (null == _logger) { return; } if (null != LoggerContext.Current?.All()) { foreach (var property in LoggerContext.Current.All()) { Properties.AddIfNotExist(property.Key, property.Value); } } Properties.AddIfNotExist(LoggingConstants.Application, LoggerBase.Application); Properties.AddIfNotExist(LoggingConstants.ThreadId, Thread.CurrentThread.ManagedThreadId); Properties.AddIfNotExist(LoggingConstants.Class, TypeClass); Properties.AddIfNotExist(LoggingConstants.MethodName, MethodName); Properties.AddIfNotExist(LoggingConstants.ProcessId, ProcessId); Properties.AddIfNotExist(LoggingConstants.Category, (short)Category); Properties.AddIfNotExist(LoggingConstants.Stacktrace, StackTrace); _logger.Log(LogLevel, 0, Properties, Exception, (state, ex) => Text); }