What? They need the port number as part of the instance key? Why not just have the exporter advertise a pseudo-port in its metrics and use that? Existing instances can keep using their "real" port number, and new instances can use whatever. The scraper can read the pseudo-port from the metrics in place of the real port.