Лучшие практики для использования Fog::Logger

Каковы лучшие практики для использования Fog::Logger. Туман обеспечивает 3 типа регистрации:

  1. отлаживать
  2. неодобрение
  3. предупреждение

    module Fog
      class Logger
        @channels = {
          :deprecation  => ::STDERR,
          :warning      => ::STDERR
        }
    
        @channels[:debug] = ::STDERR if ENV["DEBUG"]
    
        def self.[](channel)
          @channels[channel]
        end
    
        def self.[]=(channel, value)
          @channels[channel] = value
        end
    
        def self.debug(message)
          write(:debug, "[light_black][fog][DEBUG] #{message}[/]\n")
        end
    
        def self.deprecation(message)
          write(:deprecation, "[yellow][fog][DEPRECATION] #{message}[/]\n")
        end
    
        def self.warning(message)
          write(:warning, "[yellow][fog][WARNING] #{message}[/]\n")
        end
    
        def self.write(key, value)
          channel = @channels[key]
          if channel
            message = if channel.tty?
                        value.gsub(Fog::Formatador::PARSE_REGEX) { "\e[#{Fog::Formatador::STYLES[$1.to_sym]}m" }.gsub(Fog::Formatador::INDENT_REGEX, "")
                      else
                        value.gsub(Fog::Formatador::PARSE_REGEX, "").gsub(Fog::Formatador::INDENT_REGEX, "")
                      end
            channel.write(message)
          end
          nil
        end
      end
    end
    

    Если мы используем ведение журнала отладки, оно отображается только при включенном режиме отладки. Как лучше всего это использовать, приведите несколько примеров, если это возможно.

1 ответ

Решение

Регистратор предназначен для сообщений от тумана конечным пользователям, а не для непосредственного использования конечными пользователями. Я бы предложил использовать уровни примерно так:

  1. debug - не очень часто используется, больше для использования во время разработки, чем то, что я ожидал бы использовать для обмена сообщениями с конечными пользователями.
  2. не рекомендуется - Каждый раз, когда мы меняем поведение, но оставляем обратно совместимый адаптер, мы также пытаемся получить предупреждение об устаревании, объясняющее и, мы надеемся, побуждающее пользователей к обновлению.
  3. предупреждение - это имеет смысл для всего, что связано с использованием, о котором пользователь должен знать в дополнение к тому, что происходит (например, если что-то изменилось на стороне провайдера или провайдер возвращает предупреждение, но оно не сломано, чтобы фактически вызвать ошибка).

Надеюсь, что это помогает, но, безусловно, с удовольствием обсудим дальше по мере необходимости.

Другие вопросы по тегам