コード例 #1
0
        public bool Log(
            HangfireLogLevel logLevel,
            Func <string> messageFunc,
            Exception exception = null)
        {
            var lykkeLogLevel = MapLogLevel(logLevel);

            if (!_log.IsEnabled(lykkeLogLevel))
            {
                return(false);
            }

            if (messageFunc != null)
            {
                var message = messageFunc();

                switch (lykkeLogLevel)
                {
                case LykkeLogLevel.Trace:
                    _log.Trace(message, exception: exception);
                    break;

                case LykkeLogLevel.Debug:
                    _log.Debug(message, exception: exception);
                    break;

                case LykkeLogLevel.Information:
                    _log.Info(message, exception: exception);
                    break;

                case LykkeLogLevel.Warning:
                    _log.Warning(message, exception: exception);
                    break;

                case LykkeLogLevel.Error:
                    _log.Error(message, exception: exception);
                    break;

                case LykkeLogLevel.Critical:
                    _log.Critical(message, exception: exception);
                    break;

                case LykkeLogLevel.None:
                    break;

                default:
                    throw new InvalidOperationException($"Log level [{logLevel}] has been mapped to the unsupported log level [{lykkeLogLevel}].");
                }
            }

            return(true);
        }
コード例 #2
0
        protected override void WriteInternal(LogLevel level, object message, Exception exception)
        {
            var textMessage = message?.ToString();

            if (textMessage == null && exception == null)
            {
                textMessage = string.Empty;
            }

            switch (level)
            {
            case LogLevel.All:
            case LogLevel.Trace:
                _lykkeLog.Trace(LoggerName, textMessage, exception: exception);
                break;

            case LogLevel.Debug:
                _lykkeLog.Debug(LoggerName, textMessage, exception: exception);
                break;

            case LogLevel.Info:
                _lykkeLog.Info(LoggerName, textMessage, exception: exception);
                break;

            case LogLevel.Warn:
                _lykkeLog.Warning(LoggerName, textMessage, exception);
                break;

            case LogLevel.Error:
                _lykkeLog.Error(LoggerName, exception, textMessage);
                break;

            case LogLevel.Fatal:
                _lykkeLog.Critical(LoggerName, exception, textMessage);
                break;

            case LogLevel.Off:
                break;

            default:
                throw new ArgumentOutOfRangeException(nameof(level), level, "Unexpected nethereum log level");
            }
        }