You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@rocketmq.apache.org by li...@apache.org on 2022/06/01 02:23:09 UTC

[rocketmq-client-csharp] branch develop updated: Fix telemetry by adding x-mq-client-id header

This is an automated email from the ASF dual-hosted git repository.

lizhanhui pushed a commit to branch develop
in repository https://gitbox.apache.org/repos/asf/rocketmq-client-csharp.git


The following commit(s) were added to refs/heads/develop by this push:
     new bc59936  Fix telemetry by adding x-mq-client-id header
bc59936 is described below

commit bc599366568a5b12112f2c897ddc29c712a6c6b4
Author: Li Zhanhui <li...@gmail.com>
AuthorDate: Wed Jun 1 10:23:01 2022 +0800

    Fix telemetry by adding x-mq-client-id header
---
 rocketmq-client-csharp/MetadataConstants.cs |  2 ++
 rocketmq-client-csharp/Signature.cs         |  1 +
 tests/RpcClientTest.cs                      | 41 ++++++++++++++++++++++++++---
 3 files changed, 40 insertions(+), 4 deletions(-)

diff --git a/rocketmq-client-csharp/MetadataConstants.cs b/rocketmq-client-csharp/MetadataConstants.cs
index 7e632af..33bd66e 100644
--- a/rocketmq-client-csharp/MetadataConstants.cs
+++ b/rocketmq-client-csharp/MetadataConstants.cs
@@ -33,5 +33,7 @@ namespace Org.Apache.Rocketmq {
         public const string CLIENT_VERSION_KEY = "x-mq-client-version";
         public const string PROTOCOL_VERSION_KEY = "x-mq-protocol-version";
         public const string REQUEST_ID_KEY = "x-mq-request-id";
+
+        public const string CLIENT_ID_KEY = "x-mq-client-id";
     }
 }
\ No newline at end of file
diff --git a/rocketmq-client-csharp/Signature.cs b/rocketmq-client-csharp/Signature.cs
index d413b15..c249253 100644
--- a/rocketmq-client-csharp/Signature.cs
+++ b/rocketmq-client-csharp/Signature.cs
@@ -24,6 +24,7 @@ namespace Org.Apache.Rocketmq {
         public static void sign(IClientConfig clientConfig, grpc::Metadata metadata) {
             metadata.Add(MetadataConstants.LANGUAGE_KEY, "DOTNET");
             metadata.Add(MetadataConstants.CLIENT_VERSION_KEY, "5.0.0");
+            metadata.Add(MetadataConstants.CLIENT_ID_KEY, clientConfig.clientId());
             if (!String.IsNullOrEmpty(clientConfig.tenantId())) {
                 metadata.Add(MetadataConstants.TENANT_ID_KEY, clientConfig.tenantId());
             }
diff --git a/tests/RpcClientTest.cs b/tests/RpcClientTest.cs
index d6cdc91..987e82e 100644
--- a/tests/RpcClientTest.cs
+++ b/tests/RpcClientTest.cs
@@ -50,6 +50,9 @@ namespace Org.Apache.Rocketmq
             address.Port = 8081;
             address.Host = "11.166.42.94";
             cmd.Settings.AccessPoint.Addresses.Add(address);
+            cmd.Settings.RequestTimeout = new Google.Protobuf.WellKnownTypes.Duration();
+            cmd.Settings.RequestTimeout.Seconds = 3;
+            cmd.Settings.RequestTimeout.Nanos = 0;
             cmd.Settings.Publishing = new rmq::Publishing();
             var topic = new rmq::Resource();
             topic.Name = "cpp_sdk_standard";
@@ -69,14 +72,32 @@ namespace Org.Apache.Rocketmq
             Console.WriteLine("Command written");
             if (await reader.MoveNext(cts.Token))
             {
-                // var cmd = reader.Current;
-                Console.WriteLine("Server responded");
+                var response = reader.Current;
+                switch (response.CommandCase)
+                {
+                    case rmq::TelemetryCommand.CommandOneofCase.Settings:
+                        {
+                            var responded_settings = response.Settings;
+                            Console.WriteLine($"{responded_settings.ToString()}");
+                            break;
+                        }
+                    case rmq::TelemetryCommand.CommandOneofCase.None:
+                        {
+                            Console.WriteLine($"Unknown response command type: {response.Status.ToString()}");
+                            break;
+                        }
+                }
+                Console.WriteLine("Server responded ");
             }
             else
             {
                 Console.WriteLine("Server is not responding");
-            }
+                var status = duplexStreaming.GetStatus();
+                Console.WriteLine($"status={status.ToString()}");
 
+                var trailers = duplexStreaming.GetTrailers();
+                Console.WriteLine($"trailers={trailers.ToString()}");
+            }
         }
 
         [TestMethod]
@@ -100,6 +121,18 @@ namespace Org.Apache.Rocketmq
             var result = response.GetAwaiter().GetResult();
         }
 
-    }
+        [TestMethod]
+        public void TestSend()
+        {
+            string target = "https://11.166.42.94:8081";
+            var rpc_client = new RpcClient(target);
+            var client_config = new ClientConfig();
+            var metadata = new grpc::Metadata();
+            Signature.sign(client_config, metadata);
+
+            var request = new rmq::SendMessageRequest();
 
+
+        }
+    }
 }
\ No newline at end of file