private void logSummary() {
    if (instancesUpdated.get() + instancesAdded.get() + instancesDropped.get() + resourcesUpdated.get()
        + resourcesAdded.get() + resourcesDropped.get() + partitionsDisabled.get() + partitionsEnabled.get()
        + partitionsReset.get() > 0) {
      if (!dryRun) {
        info("========Cluster in Helix was updated, summary:========");
      } else {
        info("========Dry run: Actual run would update the cluster in the following way:========");
      }
      info("New instances added: {}", instancesAdded.get());
      info("Existing instances updated: {}", instancesUpdated.get());
      info("Existing instances dropped: {}", instancesDropped.get());
      info("New resources added: {}", resourcesAdded.get());
      info("Existing resources updated: {}", resourcesUpdated.get());
      info("Existing resources dropped: {}", resourcesDropped.get());
      info("Partitions disabled: {}", partitionsDisabled.get());
      info("Partitions enabled: {}", partitionsEnabled.get());
      info("Partitions reset: {}", partitionsReset.get());
    } else {
      info("========No updates were done to the cluster in Helix========");
    }
    if (validatingHelixClusterManager != null) {
      info("========Validating HelixClusterManager metrics========");
      info("Instance config change count: {}",
          validatingHelixClusterManager.helixClusterManagerMetrics.instanceConfigChangeTriggerCount.getCount());
      info("Instance config update ignored count: {}",
          validatingHelixClusterManager.helixClusterManagerMetrics.ignoredUpdatesCount.getCount());
    }
  }
Log the summary of this run.
ambry-clustermap/src/main/java/com/github/ambry/clustermap/HelixBootstrapUpgradeUtil.java