Method: Messagebus::Consumer#fetch_serverlist

Defined in:
lib/messagebus/consumer.rb

#fetch_serverlistObject



238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
# File 'lib/messagebus/consumer.rb', line 238

def fetch_serverlist
  if @options.dynamic_serverlist_fetch_url_override
    dynamic_serverlist_fetch_url = @options.dynamic_serverlist_fetch_url_override
  else
    dynamic_serverlist_fetch_url = get_dynamic_fetch_url(@host_params)
  end

  logger.info("trying to fetch dynamic url #{dynamic_serverlist_fetch_url}")
  begin
    data = fetch_uri(dynamic_serverlist_fetch_url)
    data = data.gsub(' ', '')
    serverlist = data.split(',')
    serverlist.each do |server|
      if SERVER_REGEX.match(server).nil?
        raise "bad data returned from dynamic url: #{data}"
      end
    end
    return serverlist

  rescue => e
    logger.error("Failed to fetch server list from url:#{dynamic_serverlist_fetch_url} with exception: #{e.message}, #{e.backtrace.join("|")}")
    return nil
  end
end