diff --git a/oap-server/server-configuration/configuration-k8s-configmap/src/main/java/org/apache/skywalking/oap/server/configuration/configmap/ConfigmapConfigurationWatcherRegister.java b/oap-server/server-configuration/configuration-k8s-configmap/src/main/java/org/apache/skywalking/oap/server/configuration/configmap/ConfigmapConfigurationWatcherRegister.java index 7f34e7b6dc..f7decac49e 100644 --- a/oap-server/server-configuration/configuration-k8s-configmap/src/main/java/org/apache/skywalking/oap/server/configuration/configmap/ConfigmapConfigurationWatcherRegister.java +++ b/oap-server/server-configuration/configuration-k8s-configmap/src/main/java/org/apache/skywalking/oap/server/configuration/configmap/ConfigmapConfigurationWatcherRegister.java @@ -59,8 +59,8 @@ public class ConfigmapConfigurationWatcherRegister extends ConfigWatcherRegister GroupConfigTable.GroupConfigItems groupConfigItems = new GroupConfigTable.GroupConfigItems(key); groupConfigTable.addGroupConfigItems(groupConfigItems); configMapData.forEach((groupItemKey, itemValue) -> { - if (groupItemKey.startsWith(key)) { - String itemName = groupItemKey.replaceFirst(key + ".", ""); + if (groupItemKey.startsWith(key + ".")) { + String itemName = groupItemKey.substring(key.length() + 1); groupConfigItems.add(new ConfigTable.ConfigItem(itemName, itemValue)); } }); diff --git a/oap-server/server-configuration/configuration-k8s-configmap/src/main/java/org/apache/skywalking/oap/server/configuration/configmap/ConfigurationConfigmapInformer.java b/oap-server/server-configuration/configuration-k8s-configmap/src/main/java/org/apache/skywalking/oap/server/configuration/configmap/ConfigurationConfigmapInformer.java index 15061d6719..f95fc43169 100644 --- a/oap-server/server-configuration/configuration-k8s-configmap/src/main/java/org/apache/skywalking/oap/server/configuration/configmap/ConfigurationConfigmapInformer.java +++ b/oap-server/server-configuration/configuration-k8s-configmap/src/main/java/org/apache/skywalking/oap/server/configuration/configmap/ConfigurationConfigmapInformer.java @@ -29,6 +29,7 @@ import io.kubernetes.client.openapi.models.V1ConfigMapList; import io.kubernetes.client.util.Config; import java.io.IOException; import java.util.HashMap; +import java.util.List; import java.util.Map; import java.util.Objects; import java.util.concurrent.ExecutorService; @@ -86,14 +87,17 @@ public class ConfigurationConfigmapInformer { public Map configMapData() { Map configMapData = new HashMap<>(); - if (configMapLister != null && configMapLister.list() != null) { - configMapLister.list().forEach(cf -> { - Map data = cf.getData(); - if (data == null) { - return; - } - configMapData.putAll(data); - }); + if (configMapLister != null) { + final List list = configMapLister.list(); + if (list != null) { + list.forEach(cf -> { + Map data = cf.getData(); + if (data == null) { + return; + } + configMapData.putAll(data); + }); + } } return configMapData;