Class: SystemdMon::CLI

Inherits:
Object
  • Object
show all
Defined in:
lib/systemd_mon/cli.rb

Instance Method Summary collapse

Constructor Details

#initializeCLI

Returns a new instance of CLI.



9
10
11
12
# File 'lib/systemd_mon/cli.rb', line 9

def initialize
  self.me      = "systemd_mon"
  self.verbose = true
end

Instance Method Details

#startObject



14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
# File 'lib/systemd_mon/cli.rb', line 14

def start
  yaml_config_file = ARGV.first
  self.options = load_and_validate_options(yaml_config_file)
  self.verbose = options['verbose'] || false
  Logger.verbose = verbose

  start_monitor

rescue SystemdMon::Error => e
  err_string = e.message
  if verbose
    if e.original
      err_string << " - #{e.original.message} (#{e.original.class})"
      err_string << "\n\t#{e.original.backtrace.join("\n\t")}"
    else
      err_string << " (#{e.class})"
      err_string << "\n\t#{e.backtrace.join("\n\t")}"
    end
  end
  fatal_error(err_string)
rescue => e
  err_string = e.message
  if verbose
    err_string << " (#{e.class})"
    err_string << "\n\t#{e.backtrace.join("\n\t")}"
  end
  fatal_error(err_string)
end