class ShopifyAPI::Logger

Constants

DEFAULT_LOG_LEVEL
LOG_LEVELS

Public Class Methods

debug(message) click to toggle source
# File lib/shopify_api/logger.rb, line 13
def debug(message)
  send_to_logger(:debug, message)
end
deprecated(message, version) click to toggle source
# File lib/shopify_api/logger.rb, line 33
def deprecated(message, version)
  return unless enabled_for_log_level?(:warn)

  raise Errors::FeatureDeprecatedError, message unless valid_version(version)

  send_to_logger(:warn, message)
end
error(message) click to toggle source
# File lib/shopify_api/logger.rb, line 28
def error(message)
  send_to_logger(:error, message)
end
info(message) click to toggle source
# File lib/shopify_api/logger.rb, line 18
def info(message)
  send_to_logger(:info, message)
end
levels() click to toggle source
# File lib/shopify_api/logger.rb, line 42
def levels
  LOG_LEVELS.keys
end
warn(message) click to toggle source
# File lib/shopify_api/logger.rb, line 23
def warn(message)
  send_to_logger(:warn, message)
end

Private Class Methods

context(log_level) click to toggle source
# File lib/shopify_api/logger.rb, line 49
def context(log_level)
  current_shop = ShopifyAPI::Context.active_session&.shop

  if current_shop.nil?
    "[ ShopifyAPI | #{log_level.to_s.upcase} ]"
  else
    "[ ShopifyAPI | #{log_level.to_s.upcase} | #{current_shop} ]"
  end
end
enabled_for_log_level?(log_level) click to toggle source
# File lib/shopify_api/logger.rb, line 69
def enabled_for_log_level?(log_level)
  T.must(LOG_LEVELS[log_level]) >= T.must(LOG_LEVELS[ShopifyAPI::Context.log_level] ||
    LOG_LEVELS[DEFAULT_LOG_LEVEL])
end
send_to_logger(log_level, message) click to toggle source
# File lib/shopify_api/logger.rb, line 60
def send_to_logger(log_level, message)
  return unless enabled_for_log_level?(log_level)

  full_message = "#{context(log_level)} #{message}"

  ShopifyAPI::Context.logger.public_send(log_level, full_message)
end
valid_version(version) click to toggle source
# File lib/shopify_api/logger.rb, line 75
def valid_version(version)
  current_version = Gem::Version.create(ShopifyAPI::VERSION)
  deprecate_version = Gem::Version.create(version)
  T.must(current_version) < deprecate_version
end