Class: VagrantPlugins::AWS::WinRM::Plugin

Inherits:
Object
  • Object
show all
Defined in:
lib/vagrant-aws-winrm/plugin.rb

Class Method Summary collapse

Class Method Details

.setup_loggingObject



23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
# File 'lib/vagrant-aws-winrm/plugin.rb', line 23

def self.setup_logging
  require "log4r"

  level = nil
  begin
    level = Log4r.const_get(ENV["VAGRANT_LOG"].upcase)
  rescue NameError
    # This means that the logging constant wasn't found,

    # which is fine. We just keep `level` as `nil`. But

    # we tell the user.

    level = nil
  end

  # Some constants, such as "true" resolve to booleans, so the

  # above error checking doesn't catch it. This will check to make

  # sure that the log level is an integer, as Log4r requires.

  level = nil if !level.is_a?(Integer)

  # Set the logging level on all "vagrant" namespaced

  # logs as long as we have a valid level.

  if level
    logger = Log4r::Logger.new("vagrant_aws_winrm")
    logger.outputters = Log4r::Outputter.stderr
    logger.level = level
    logger = nil
  end
end