Exemple #1
0
        /// <summary>
        ///     Записывает информацию заданной важности
        /// </summary>
        /// <param name="logger">Логгер</param>
        /// <param name="level">Важность информации</param>
        /// <param name="message">Сообщение</param>
        /// <param name="exception">Исключение</param>
        /// <param name="typeObject">Тип объекта</param>
        /// <param name="memberName">Имя метода или свойства</param>
        public static void Log(this ILogger logger, LoggingLevel level, string message, Exception exception,
                               Type typeObject, [CallerMemberName] string memberName = null)
        {
            //Получаем приоритетную важность
            level = level.GetFirstPriorityLevel();

            switch (level)
            {
            case LoggingLevel.Trace:
                logger.Trace(message, exception, typeObject, memberName);

                break;

            case LoggingLevel.Debug:
                logger.Debug(message, exception, typeObject, memberName);

                break;

            case LoggingLevel.Info:
                logger.Info(message, exception, typeObject, memberName);

                break;

            case LoggingLevel.Warn:
                logger.Warn(message, exception, typeObject, memberName);

                break;

            case LoggingLevel.Error:
                logger.Error(message, exception, typeObject, memberName);

                break;

            case LoggingLevel.Fatal:
                logger.Fatal(message, exception, typeObject, memberName);

                break;
            }
        }