class SiteHook::Log

Public Class Methods

access() click to toggle source

@return [Access]

# File lib/site_hook/logger.rb, line 85
def self.access
  Loggers::Access.new(base: "SiteHook::Log::Access")
end
app() click to toggle source

@return [Loggers::App]

# File lib/site_hook/logger.rb, line 110
def self.app
  Loggers::App.new(level: @@config.app, base: "SiteHook::Log::App")
end
build() click to toggle source

@return [Loggers::Build]

# File lib/site_hook/logger.rb, line 105
def self.build
  Loggers::Build.new(level: @@config.build, base: "SiteHook::Log::Build")
end
defaults() click to toggle source
# File lib/site_hook/logger.rb, line 10
def self.defaults
  RecursiveOpenStruct.new(
    {
      Hook: {
        level: "info",
      },
      App: {
        level: "info",
      },
      Build: {
        level: "info",
      },
      Git: {
        level: "info",
      },
      Access: {
        level: nil,
      },
      Fake: {
        level: nil,
      },
    }
  )
end
fake() click to toggle source

@return [Loggers::Fake]

# File lib/site_hook/logger.rb, line 90
def self.fake
  Loggers::Fake.new
end
git() click to toggle source

@return [Loggers::Git]

# File lib/site_hook/logger.rb, line 100
def self.git
  Loggers::Git.new(level: @@config.git, base: "SiteHook::Log::Git")
end
hook() click to toggle source

@return [Loggers::Hook]

# File lib/site_hook/logger.rb, line 95
def self.hook
  Loggers::Hook.new(level: @@config.hook, base: "SiteHook::Log::Hook")
end
new(input, output, errput) click to toggle source
# File lib/site_hook/logger.rb, line 75
def initialize(input, output, errput)
  begin
    @@config = SiteHook::Config.log_levels
  rescue Errno::ENOENT
    raise NoConfigError path
  rescue NoMethodError
  end
end
validate(config) click to toggle source
# File lib/site_hook/logger.rb, line 35
def self.validate(config)
  invalid_types = []
  valid_config_log_types = [
    "hook",
    "git",
    "app",
    "build",
  ]
  invalid_config_log_types = [
    "access",
    "fake",
  ]
  config = config["log_levels"]
  is_config_valid = config.all? do |x|
    if valid_config_log_types.include? x
      true
    elsif invalid_config_log_types.include? x
      invalid_types << x
      false
    else
      false
    end
  end

  unless is_config_valid
    raise ArgumentError "invalid log type(s) in config, [#{invalid_types.join(", ")}]"
  end
end

Public Instance Methods

inspect() click to toggle source
# File lib/site_hook/logger.rb, line 64
def inspect
  meths = %i[hook build git app fake access]
  sections = {}
  meths.each do |m|
    sections[m] = self.class.send(m).inspect
  end
  secs = []
  sections.each { |name, instance| secs << "#{name}=#{instance}" }
  "#<SiteHook::Log #{secs.join(" ")}>"
end