Beispiel #1
0
        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);
        }