You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@servicecomb.apache.org by wu...@apache.org on 2020/12/16 14:46:49 UTC
[servicecomb-java-chassis] branch master updated:
[SCB-2164]InstanceCacheCheckTask only print necessary message to avoid
information leak
This is an automated email from the ASF dual-hosted git repository.
wujimin pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/servicecomb-java-chassis.git
The following commit(s) were added to refs/heads/master by this push:
new 7f8f71d [SCB-2164]InstanceCacheCheckTask only print necessary message to avoid information leak
7f8f71d is described below
commit 7f8f71d97e1b405f09536f537b20c995843856e1
Author: liubao <bi...@qq.com>
AuthorDate: Wed Dec 16 17:16:26 2020 +0800
[SCB-2164]InstanceCacheCheckTask only print necessary message to avoid information leak
---
.../registry/api/registry/MicroserviceInstance.java | 10 ++++++++++
.../diagnosis/instance/InstanceCacheCheckTask.java | 2 +-
.../diagnosis/instance/InstanceCacheChecker.java | 13 +++++++++----
.../api/registry/TestMicroServiceInstance.java | 3 +++
4 files changed, 23 insertions(+), 5 deletions(-)
diff --git a/foundations/foundation-registry/src/main/java/org/apache/servicecomb/registry/api/registry/MicroserviceInstance.java b/foundations/foundation-registry/src/main/java/org/apache/servicecomb/registry/api/registry/MicroserviceInstance.java
index 3622286..5ece9ec 100644
--- a/foundations/foundation-registry/src/main/java/org/apache/servicecomb/registry/api/registry/MicroserviceInstance.java
+++ b/foundations/foundation-registry/src/main/java/org/apache/servicecomb/registry/api/registry/MicroserviceInstance.java
@@ -65,6 +65,16 @@ public class MicroserviceInstance {
private String timestamp;
+ @Override
+ public String toString() {
+ StringBuilder sb = new StringBuilder();
+ sb.append("instanceId=" + instanceId + ";");
+ sb.append("serviceId=" + serviceId + ";");
+ sb.append("status=" + status + ";");
+ sb.append("endpoints=" + endpoints.toString());
+ return sb.toString();
+ }
+
public String getTimestamp() {
return timestamp;
}
diff --git a/service-registry/registry-service-center/src/main/java/org/apache/servicecomb/serviceregistry/diagnosis/instance/InstanceCacheCheckTask.java b/service-registry/registry-service-center/src/main/java/org/apache/servicecomb/serviceregistry/diagnosis/instance/InstanceCacheCheckTask.java
index c8eb0e7..36b9ab9 100644
--- a/service-registry/registry-service-center/src/main/java/org/apache/servicecomb/serviceregistry/diagnosis/instance/InstanceCacheCheckTask.java
+++ b/service-registry/registry-service-center/src/main/java/org/apache/servicecomb/serviceregistry/diagnosis/instance/InstanceCacheCheckTask.java
@@ -124,7 +124,7 @@ public class InstanceCacheCheckTask implements ServiceRegistryTaskInitializer {
InstanceCacheSummary instanceCacheSummary = checker.check();
eventBus.post(instanceCacheSummary);
- LOGGER.info("check instance cache, result={}.", Json.encode(instanceCacheSummary));
+ LOGGER.info("check instance cache, result={}.", instanceCacheSummary.getStatus());
} catch (Throwable e) {
LOGGER.error("failed check instance cache..", e);
}
diff --git a/service-registry/registry-service-center/src/main/java/org/apache/servicecomb/serviceregistry/diagnosis/instance/InstanceCacheChecker.java b/service-registry/registry-service-center/src/main/java/org/apache/servicecomb/serviceregistry/diagnosis/instance/InstanceCacheChecker.java
index 4ad8b54..0359b4b 100644
--- a/service-registry/registry-service-center/src/main/java/org/apache/servicecomb/serviceregistry/diagnosis/instance/InstanceCacheChecker.java
+++ b/service-registry/registry-service-center/src/main/java/org/apache/servicecomb/serviceregistry/diagnosis/instance/InstanceCacheChecker.java
@@ -24,7 +24,6 @@ import java.util.Objects;
import java.util.Set;
import org.apache.servicecomb.foundation.common.utils.TimeUtils;
-import org.apache.servicecomb.serviceregistry.RegistryUtils;
import org.apache.servicecomb.registry.api.registry.MicroserviceInstance;
import org.apache.servicecomb.registry.api.registry.MicroserviceInstances;
import org.apache.servicecomb.registry.consumer.AppManager;
@@ -32,6 +31,7 @@ import org.apache.servicecomb.registry.consumer.MicroserviceManager;
import org.apache.servicecomb.registry.consumer.MicroserviceVersions;
import org.apache.servicecomb.registry.consumer.StaticMicroserviceVersions;
import org.apache.servicecomb.registry.definition.DefinitionConst;
+import org.apache.servicecomb.serviceregistry.RegistryUtils;
import org.apache.servicecomb.serviceregistry.diagnosis.Status;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
@@ -40,7 +40,7 @@ import io.vertx.core.json.Json;
public class InstanceCacheChecker {
private static final Logger LOGGER = LoggerFactory.getLogger(InstanceCacheChecker.class);
-
+
Clock clock = TimeUtils.getSystemDefaultZoneClock();
private AppManager appManager;
@@ -117,6 +117,11 @@ public class InstanceCacheChecker {
String local = Json.encode(microserviceVersions.getPulledInstances());
String remote = Json.encode(remoteInstances);
if (local.equals(remote)) {
+ LOGGER.info("instance cache match. appId={}, microservice={}.\n"
+ + "current cache: {}\n",
+ microserviceVersions.getAppId(),
+ microserviceVersions.getMicroserviceName(),
+ remoteInstances.toString());
instanceCacheResult.setStatus(Status.NORMAL);
return instanceCacheResult;
}
@@ -126,8 +131,8 @@ public class InstanceCacheChecker {
+ "remote cache: {}",
microserviceVersions.getAppId(),
microserviceVersions.getMicroserviceName(),
- local,
- remote);
+ microserviceVersions.getPulledInstances().toString(),
+ remoteInstances.toString());
instanceCacheResult.setStatus(Status.ABNORMAL);
instanceCacheResult.setDetail("instance cache not match");
diff --git a/service-registry/registry-service-center/src/test/java/org/apache/servicecomb/serviceregistry/api/registry/TestMicroServiceInstance.java b/service-registry/registry-service-center/src/test/java/org/apache/servicecomb/serviceregistry/api/registry/TestMicroServiceInstance.java
index d440f90..18c2652 100644
--- a/service-registry/registry-service-center/src/test/java/org/apache/servicecomb/serviceregistry/api/registry/TestMicroServiceInstance.java
+++ b/service-registry/registry-service-center/src/test/java/org/apache/servicecomb/serviceregistry/api/registry/TestMicroServiceInstance.java
@@ -86,6 +86,7 @@ public class TestMicroServiceInstance {
Assert.assertNull(oMicroserviceInstance.getHealthCheck());
Assert.assertNull(oMicroserviceInstance.getStage());
Assert.assertEquals(MicroserviceInstanceStatus.UP, oMicroserviceInstance.getStatus());
+ Assert.assertEquals("instanceId=null;serviceId=null;status=UP;endpoints=[]", oMicroserviceInstance.toString());
}
@SuppressWarnings("deprecation")
@@ -110,6 +111,8 @@ public class TestMicroServiceInstance {
Assert.assertNotEquals(oMicroserviceInstance.hashCode(), other.hashCode());
Assert.assertEquals(oMicroserviceInstance, same);
Assert.assertEquals(oMicroserviceInstance.hashCode(), same.hashCode());
+ Assert.assertEquals("instanceId=testInstanceID;serviceId=testServiceID;status=DOWN;endpoints=[testEndpoints]",
+ oMicroserviceInstance.toString());
}
@SuppressWarnings("deprecation")