code: static Set<String> extractPortKeys(Configuration config) {
  		final LinkedHashSet<String> tmPortKeys = new LinkedHashSet<>(TM_PORT_KEYS);
  
  		final String portKeys = config.getString(PORT_ASSIGNMENTS);
  
  		if (portKeys != null) {
  			Arrays.stream(portKeys.split(","))
  				.map(String::trim)
  				.peek(key -> LOG.debug("Adding port key {} to mesos request"))
  				.forEach(tmPortKeys::add);
  		}
  
  		return Collections.unmodifiableSet(tmPortKeys);
  	}
docs: Get the port keys representing the TM's configured endpoints. This includes mandatory TM endpoints such as
  data and rpc as well as optionally configured endpoints for services such as prometheus reporter
  
  @param config to extract the port keys from
  @return A deterministically ordered Set of port keys to expose from the TM container