def main(): """The main program sets up the commands then delegates to one of them.""" disable_ssl_verification() all_command_handlers, parser = prepare_commands() opts = parser.parse_args() options = vars(opts) init_logging(options) options = util.merge_options_and_yaml_from_path(options, opts.config) # TODO(ewiseblatt): decouple this so we dont need to know about this here. # Take the union of stores enabled on the command line or in the config file. if options.get('monitor') is None: options['monitor'] = {} stores = options['monitor'].get('metric_store', []) if not isinstance(stores, list): stores = [stores] stores.extend([ store for store in ['datadog', 'prometheus', 'stackdriver'] if options.get('monitor_' + store) ]) options['monitor']['metric_store'] = set(stores) command_processor.set_global_options(options) command_processor.process_command(options['command'], options, all_command_handlers)
def process_commandline_request(self, options): """Implements CommandHandler. This starts the server and will run forever. """ command_processor.set_global_options(options) logging.info('Starting HTTP server on port %d', options['port']) url_path_to_handler = {handler.url_path: handler.process_web_request for handler in self.__handler_list} httpd = http_server.HttpServer(options['port'], url_path_to_handler) httpd.serve_forever()
def process_commandline_request(self, options): """Implements CommandHandler. This starts the server and will run forever. """ command_processor.set_global_options(options) logging.info('Starting HTTP server on port %d', options['port']) url_path_to_handler = { handler.url_path: handler.process_web_request for handler in self.__handler_list } httpd = http_server.HttpServer(options['port'], url_path_to_handler) httpd.serve_forever()
def setUp(self): self.options = {'prototype_path': None, 'host': 'spectator_hostname', 'services': ['clouddriver', 'gate']} command_processor.set_global_options(self.options) self.spectator = spectator_client.SpectatorClient(self.options) self.mock_clouddriver_response = ( StringIO(sample_data.CLOUDDRIVER_RESPONSE_TEXT)) self.mock_gate_response = StringIO(sample_data.GATE_RESPONSE_TEXT) self.mock_request = Mock() self.mock_request.respond = Mock()
def setUp(self): self.options = args_to_options([ '--host=spectator_hostname', '--service_hosts=', '--clouddriver=spectator_hostname', '--gate=spectator_hostname' ]) command_processor.set_global_options(self.options) self.spectator = spectator_client.SpectatorClient(self.options) self.mock_clouddriver_response = (StringIO( sample_data.CLOUDDRIVER_RESPONSE_TEXT)) self.mock_gate_response = StringIO(sample_data.GATE_RESPONSE_TEXT) self.mock_request = Mock() self.mock_request.respond = Mock()