Ver Fonte

Set log level for MilvusMultiServiceClient (#637)

Signed-off-by: yhmo <yihua.mo@zilliz.com>
groot há 1 ano atrás
pai
commit
793d6046d4

+ 8 - 0
src/main/java/io/milvus/client/MilvusClient.java

@@ -21,6 +21,7 @@ package io.milvus.client;
 
 import com.google.common.util.concurrent.ListenableFuture;
 import io.milvus.grpc.*;
+import io.milvus.param.LogLevel;
 import io.milvus.param.R;
 import io.milvus.param.RpcStatus;
 import io.milvus.param.alias.*;
@@ -67,6 +68,13 @@ public interface MilvusClient {
      */
     MilvusClient withRetryInterval(long interval, TimeUnit timeUnit);
 
+    /**
+     * Set log level in runtime.
+     *
+     * @param level {@link LogLevel}
+     */
+    void setLogLevel(LogLevel level);
+
     /**
      * Disconnects from a Milvus server with timeout of 1 minute
      */

+ 7 - 6
src/main/java/io/milvus/client/MilvusMultiServiceClient.java

@@ -23,11 +23,7 @@ import com.google.common.util.concurrent.ListenableFuture;
 import io.milvus.connection.ClusterFactory;
 import io.milvus.connection.ServerSetting;
 import io.milvus.grpc.*;
-import io.milvus.param.ConnectParam;
-import io.milvus.param.MultiConnectParam;
-import io.milvus.param.R;
-import io.milvus.param.RpcStatus;
-import io.milvus.param.ServerAddress;
+import io.milvus.param.*;
 import io.milvus.param.alias.*;
 import io.milvus.param.bulkinsert.*;
 import io.milvus.param.collection.*;
@@ -101,7 +97,6 @@ public class MilvusMultiServiceClient implements MilvusClient {
         return new MilvusServiceClient(clusterConnectParam);
     }
 
-
     @Override
     public MilvusClient withTimeout(long timeout, TimeUnit timeoutUnit) {
         return clusterFactory.getMaster().getClient().withTimeout(timeout, timeoutUnit);
@@ -124,6 +119,12 @@ public class MilvusMultiServiceClient implements MilvusClient {
         this.clusterFactory.close();
     }
 
+    @Override
+    public void setLogLevel(LogLevel level) {
+        this.clusterFactory.getAvailableServerSettings().parallelStream()
+                .forEach(serverSetting -> serverSetting.getClient().setLogLevel(level));
+    }
+
     @Override
     public R<Boolean> hasCollection(HasCollectionParam requestParam) {
         return this.clusterFactory.getMaster().getClient().hasCollection(requestParam);

+ 6 - 5
src/main/java/io/milvus/client/MilvusServiceClient.java

@@ -159,11 +159,7 @@ public class MilvusServiceClient extends AbstractMilvusGrpcClient {
         this.timeoutMs = src.timeoutMs;
         this.retryTimes = src.retryTimes;
         this.retryIntervalMs = src.retryIntervalMs;
-    }
-
-    // set log level in runtime
-    public void setLogLevel(LogLevel level) {
-        logLevel = level;
+        this.logLevel = src.logLevel;
     }
 
     @Override
@@ -298,6 +294,11 @@ public class MilvusServiceClient extends AbstractMilvusGrpcClient {
         return R.failed(new RuntimeException(msg));
     }
 
+    @Override
+    public void setLogLevel(LogLevel level) {
+        logLevel = level;
+    }
+
     @Override
     public R<Boolean> hasCollection(HasCollectionParam requestParam) {
         return retry(()-> super.hasCollection(requestParam));

+ 1 - 0
src/test/java/io/milvus/client/MilvusMultiClientDockerTest.java

@@ -233,6 +233,7 @@ class MilvusMultiClientDockerTest {
 
     @Test
     void testFloatVectors() {
+        client.setLogLevel(LogLevel.Error);
         String randomCollectionName = generator.generate(10);
 
         // collection schema