Given the current metrics service implementation if we cannot publish metrics over HTTP for more than 10 minutes we will start to lose metrics payloads, this can leave chunks of delta values missing which will cause future metrics to be incorrect. We need to think of a scalable way to preserve metrics if a publish fails, perhaps by cycling metrics back into the timed cache or processing cache if they cannot be immediately sent, an infinitely sized queue could also be used but this will not scale well