From 4cbe357c5fe7a3eefcb2f3df62895c3639c8163f Mon Sep 17 00:00:00 2001 From: annie-mac Date: Tue, 9 May 2023 15:30:56 -0700 Subject: [PATCH 1/3] only use base userAgent in clientTelemetry --- .../com/azure/cosmos/ClientTelemetryTest.java | 22 ++++++++++++++++++- .../implementation/RxDocumentClientImpl.java | 1 - .../clienttelemetry/ClientTelemetry.java | 4 ++-- 3 files changed, 23 insertions(+), 4 deletions(-) diff --git a/sdk/cosmos/azure-cosmos-tests/src/test/java/com/azure/cosmos/ClientTelemetryTest.java b/sdk/cosmos/azure-cosmos-tests/src/test/java/com/azure/cosmos/ClientTelemetryTest.java index 1ffb1286d4e6..10b29e89e8ff 100644 --- a/sdk/cosmos/azure-cosmos-tests/src/test/java/com/azure/cosmos/ClientTelemetryTest.java +++ b/sdk/cosmos/azure-cosmos-tests/src/test/java/com/azure/cosmos/ClientTelemetryTest.java @@ -27,7 +27,6 @@ import org.testng.annotations.AfterClass; import org.testng.annotations.BeforeClass; import org.testng.annotations.DataProvider; -import org.testng.annotations.Ignore; import org.testng.annotations.Test; import reactor.core.publisher.Mono; import reactor.test.StepVerifier; @@ -351,6 +350,27 @@ public void clientTelemetryWithStageJunoEndpoint(boolean useProxy) throws Interr } } + @Test(groups = {"emulator"}, timeOut = TIMEOUT) + public void clientTelemetryUseBaseUserAgent() { + CosmosAsyncClient client = null; + String userAgentSuffix = "clientTelemetryUseBaseUserAgent"; + + try { + client = new CosmosClientBuilder() + .key(TestConfigurations.MASTER_KEY) + .endpoint(TestConfigurations.HOST) + .userAgentSuffix(userAgentSuffix) + .buildAsyncClient(); + + ClientTelemetry clientTelemetry = client.getContextClient().getClientTelemetry(); + assertThat(clientTelemetry.getClientTelemetryInfo().getUserAgent().contains(userAgentSuffix)).isFalse(); + } finally { + if (client != null) { + client.close(); + } + } + } + private InternalObjectNode getInternalObjectNode() { InternalObjectNode internalObjectNode = new InternalObjectNode(); String uuid = UUID.randomUUID().toString(); diff --git a/sdk/cosmos/azure-cosmos/src/main/java/com/azure/cosmos/implementation/RxDocumentClientImpl.java b/sdk/cosmos/azure-cosmos/src/main/java/com/azure/cosmos/implementation/RxDocumentClientImpl.java index 106b188b24f9..7a1813d7e726 100644 --- a/sdk/cosmos/azure-cosmos/src/main/java/com/azure/cosmos/implementation/RxDocumentClientImpl.java +++ b/sdk/cosmos/azure-cosmos/src/main/java/com/azure/cosmos/implementation/RxDocumentClientImpl.java @@ -550,7 +550,6 @@ public void init(CosmosClientMetadataCachesSnapshot metadataCachesSnapshot, Func null, UUID.randomUUID().toString(), ManagementFactory.getRuntimeMXBean().getName(), - userAgentContainer.getUserAgent(), connectionPolicy.getConnectionMode(), globalEndpointManager.getLatestDatabaseAccount().getId(), null, diff --git a/sdk/cosmos/azure-cosmos/src/main/java/com/azure/cosmos/implementation/clienttelemetry/ClientTelemetry.java b/sdk/cosmos/azure-cosmos/src/main/java/com/azure/cosmos/implementation/clienttelemetry/ClientTelemetry.java index a4da775a7b26..9c033c7ccbfb 100644 --- a/sdk/cosmos/azure-cosmos/src/main/java/com/azure/cosmos/implementation/clienttelemetry/ClientTelemetry.java +++ b/sdk/cosmos/azure-cosmos/src/main/java/com/azure/cosmos/implementation/clienttelemetry/ClientTelemetry.java @@ -109,6 +109,7 @@ public class ClientTelemetry { private static final double PERCENTILE_95 = 95.0; private static final double PERCENTILE_99 = 99.0; private static final double PERCENTILE_999 = 99.9; + private static final String USER_AGENT = Utils.getUserAgent(); private final int clientTelemetrySchedulingSec; private final IAuthorizationTokenProvider tokenProvider; @@ -118,7 +119,6 @@ public ClientTelemetry(DiagnosticsClientContext diagnosticsClientContext, Boolean acceleratedNetworking, String clientId, String processId, - String userAgent, ConnectionMode connectionMode, String globalDatabaseAccountName, String applicationRegion, @@ -132,7 +132,7 @@ public ClientTelemetry(DiagnosticsClientContext diagnosticsClientContext, getMachineId(diagnosticsClientContext.getConfig()), clientId, processId, - userAgent, + USER_AGENT, connectionMode, globalDatabaseAccountName, applicationRegion, From 3f8fedd03863ffc3716ff01b3d90af174dfa1031 Mon Sep 17 00:00:00 2001 From: annie-mac Date: Tue, 9 May 2023 15:34:05 -0700 Subject: [PATCH 2/3] update changelog --- sdk/cosmos/azure-cosmos/CHANGELOG.md | 1 + 1 file changed, 1 insertion(+) diff --git a/sdk/cosmos/azure-cosmos/CHANGELOG.md b/sdk/cosmos/azure-cosmos/CHANGELOG.md index cc4d440904f5..b50509980e95 100644 --- a/sdk/cosmos/azure-cosmos/CHANGELOG.md +++ b/sdk/cosmos/azure-cosmos/CHANGELOG.md @@ -12,6 +12,7 @@ #### Bugs Fixed * Fixed `IllegalArgumentException` in changeFeedProcessor when `maxScaleCount` is configured - See [PR 34618](https://github.com/Azure/azure-sdk-for-java/pull/34618) +* Remove custom user agent suffix in client telemetry - See [PR 34866](https://github.com/Azure/azure-sdk-for-java/pull/34866) #### Other Changes From 30df11997e8ab10c33d04bf2ea600d4f5d6d1830 Mon Sep 17 00:00:00 2001 From: annie-mac Date: Tue, 9 May 2023 18:59:29 -0700 Subject: [PATCH 3/3] resolve comments --- sdk/cosmos/azure-cosmos/CHANGELOG.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/sdk/cosmos/azure-cosmos/CHANGELOG.md b/sdk/cosmos/azure-cosmos/CHANGELOG.md index b50509980e95..5f7c92dc7490 100644 --- a/sdk/cosmos/azure-cosmos/CHANGELOG.md +++ b/sdk/cosmos/azure-cosmos/CHANGELOG.md @@ -12,7 +12,7 @@ #### Bugs Fixed * Fixed `IllegalArgumentException` in changeFeedProcessor when `maxScaleCount` is configured - See [PR 34618](https://github.com/Azure/azure-sdk-for-java/pull/34618) -* Remove custom user agent suffix in client telemetry - See [PR 34866](https://github.com/Azure/azure-sdk-for-java/pull/34866) +* Removed custom user agent suffix from client telemetry - See [PR 34866](https://github.com/Azure/azure-sdk-for-java/pull/34866) #### Other Changes