class ContinuentNagiosMonitorConnector

Private Instance Methods

configure() click to toggle source
Calls superclass method
# File bin/tungsten_nagios_connector, line 52
def configure
  super()
  
  description("Test the Tungsten Connector using credentials from --defaults-file.")
  
  add_option(:defaults_file, {
    :on => "--defaults-file String",
    :help => "The defaults file to use when connecting to MySQL"
  })
  
  add_option(:statement, {
    :on => "--statement String",
    :help => "The command to run against the Tungsten Connector",
    :default => "tungsten connection status",
  })
end
main() click to toggle source
# File bin/tungsten_nagios_connector, line 33
def main
  unless TI.is_connector?()
    critical("The server is not a Continuent Tungsten Connector")
  end
  
  unless TI.is_running?("connector")
    critical("The Continuent Tungsten Connector is not running")
  end
  
  begin
    TU.cmd_result("echo '#{opt(:statement)}' | mysql --defaults-file=#{opt(:defaults_file)} -h#{TI.hostname()}")
  rescue CommandError => ce
    TU.debug(ce)
    critical("A connection to the Tungsten Connector could not be created")
  end
  
  ok("The connection was successfully created")
end
script_name() click to toggle source
# File bin/tungsten_nagios_connector, line 94
def script_name
  "tungsten_nagios_connector"
end
validate() click to toggle source
Calls superclass method
# File bin/tungsten_nagios_connector, line 69
def validate
  super()
  
  unless TU.is_valid?()
    return TU.is_valid?()
  end
  
  unless TI.is_connector?()
    ok("This server is not running a Tungsten Connector")
  end
  
  if opt(:defaults_file).to_s() == ""
    defaults_file = Tempfile.new("tungsten_nagios_connector")
    opt(:defaults_file, defaults_file.path())
    
    TU.log_cmd_results?(false)
    defaults_file.puts("[client]")
    defaults_file.puts("user=#{TI.setting(TI.setting_key(CONNECTORS, "connector_user"))}")
    defaults_file.puts("password=#{TI.setting(TI.setting_key(CONNECTORS, "connector_password"))}")
    defaults_file.puts("port=#{TI.setting(TI.setting_key(CONNECTORS, "connector_listen_port"))}")
    defaults_file.flush()
    TU.log_cmd_results?(true)
  end
end