Skip to content

Commit 45c498b

Browse files
authored
Add clientid to useragent (#3179)
1 parent 85c5cc8 commit 45c498b

File tree

2 files changed

+15
-3
lines changed

2 files changed

+15
-3
lines changed

jetbrains-core/src/software/aws/toolkits/jetbrains/core/AwsClientManager.kt

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -24,6 +24,7 @@ import software.aws.toolkits.jetbrains.AwsToolkit
2424
import software.aws.toolkits.jetbrains.core.credentials.AwsConnectionManager
2525
import software.aws.toolkits.jetbrains.core.credentials.CredentialManager
2626
import software.aws.toolkits.jetbrains.core.region.AwsRegionProvider
27+
import software.aws.toolkits.jetbrains.settings.AwsSettings
2728

2829
open class AwsClientManager : ToolkitClientManager(), Disposable {
2930
init {
@@ -59,7 +60,7 @@ open class AwsClientManager : ToolkitClientManager(), Disposable {
5960
val userAgent: String by lazy {
6061
val platformName = tryOrNull { ApplicationNamesInfo.getInstance().fullProductNameWithEdition.replace(' ', '-') }
6162
val platformVersion = tryOrNull { ApplicationInfoEx.getInstanceEx().fullVersion.replace(' ', '-') }
62-
"AWS-Toolkit-For-JetBrains/${AwsToolkit.PLUGIN_VERSION} $platformName/$platformVersion"
63+
"AWS-Toolkit-For-JetBrains/${AwsToolkit.PLUGIN_VERSION} $platformName/$platformVersion ClientId/${AwsSettings.getInstance().clientId}"
6364
}
6465

6566
internal val CUSTOMIZER_EP = ExtensionPointName<AwsClientCustomizer>("aws.toolkit.sdk.clientCustomizer")

jetbrains-core/src/software/aws/toolkits/jetbrains/settings/AwsSettings.kt

Lines changed: 13 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -6,6 +6,7 @@ package software.aws.toolkits.jetbrains.settings
66
import com.intellij.openapi.actionSystem.AnAction
77
import com.intellij.openapi.actionSystem.AnActionEvent
88
import com.intellij.openapi.actionSystem.LangDataKeys
9+
import com.intellij.openapi.application.ApplicationManager
910
import com.intellij.openapi.components.PersistentStateComponent
1011
import com.intellij.openapi.components.State
1112
import com.intellij.openapi.components.Storage
@@ -83,8 +84,18 @@ class DefaultAwsSettings : PersistentStateComponent<AwsConfiguration>, AwsSettin
8384
}
8485

8586
override val clientId: UUID
86-
@Synchronized get() = UUID.fromString(preferences.get(CLIENT_ID_KEY, UUID.randomUUID().toString())).also {
87-
preferences.put(CLIENT_ID_KEY, it.toString())
87+
@Synchronized get() {
88+
val id = when {
89+
ApplicationManager.getApplication().isUnitTestMode || System.getProperty("robot-server.port") != null -> "ffffffff-ffff-ffff-ffff-ffffffffffff"
90+
isTelemetryEnabled == false -> "11111111-1111-1111-1111-111111111111"
91+
else -> {
92+
preferences.get(CLIENT_ID_KEY, UUID.randomUUID().toString()).also {
93+
preferences.put(CLIENT_ID_KEY, it.toString())
94+
}
95+
}
96+
}
97+
98+
return UUID.fromString(id)
8899
}
89100

90101
companion object {

0 commit comments

Comments
 (0)