code: @JsonIgnore
      public String getId() {
          if (instanceId != null && !instanceId.isEmpty()) {
              return instanceId;
          } else if (dataCenterInfo instanceof UniqueIdentifier) {
              String uniqueId = ((UniqueIdentifier) dataCenterInfo).getId();
              if (uniqueId != null && !uniqueId.isEmpty()) {
                  return uniqueId;
              }
          }
          return hostName;
      }
docs: Returns the unique id of the instance.
  (Note) now that id is set at creation time within the instanceProvider, why do the other checks?
  This is still necessary for backwards compatibility when upgrading in a deployment with multiple
  client versions (some with the change, some without).
  
  @return the unique id.