Skip to content

Commit 0f2b2f3

Browse files
authored
Move telemetry into registry key (#2778)
* Moving telemetry configuration into registry keys so that it can be modified without a code change * Recording telemetry before flushing the cache so that account id is still captured in the telemetry call
1 parent fba1726 commit 0f2b2f3

File tree

3 files changed

+10
-5
lines changed

3 files changed

+10
-5
lines changed

jetbrains-core/resources/META-INF/plugin.xml

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -228,6 +228,9 @@ with what features/services are supported.
228228
<fileEditorProvider implementation="software.aws.toolkits.jetbrains.services.dynamodb.editor.DynamoDbTableEditorProvider"/>
229229
<fileIconProvider order="first" implementation="software.aws.toolkits.jetbrains.services.dynamodb.editor.DynamoDbFileIconProvider"/>
230230

231+
<registryKey key="aws.telemetry.endpoint" description="Endpoint to use for publishing AWS client-side telemetry" defaultValue="https://client-telemetry.us-east-1.amazonaws.com" restartRequired="true"/>
232+
<registryKey key="aws.telemetry.identityPool" description="Cognito identity pool to use for publishing AWS client-side telemetry" defaultValue="us-east-1:820fd6d1-95c0-4ca4-bffb-3f01d32da842" restartRequired="true"/>
233+
<registryKey key="aws.telemetry.region" description="Region to use for publishing AWS client-side telemetry" defaultValue="us-east-1" restartRequired="true"/>
231234
<registryKey key="aws.credentialProcess.timeout" description="AWS Credential Process timeout (ms)" restartRequired="false" defaultValue="30000"/>
232235
<registryKey key="aws.debuggerAttach.timeout" description="Time allowed for debuggers to attach before timing out (ms)" restartRequired="false" defaultValue="60000"/>
233236
<registryKey key="aws.feature.ecsCloudDebug" description="Enables the Cloud Debug for ECS set of features" restartRequired="false" defaultValue="true"/>

jetbrains-core/src/software/aws/toolkits/jetbrains/core/credentials/RefreshConnectionAction.kt

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -26,9 +26,9 @@ class RefreshConnectionAction(text: String = message("settings.refresh.descripti
2626

2727
override fun actionPerformed(e: AnActionEvent) {
2828
val project = e.project ?: return
29+
AwsTelemetry.refreshExplorer(project)
2930
val scope = project.applicationThreadPoolScope("RefreshConnectionAction")
3031
scope.launch { AwsResourceCache.getInstance().clear() }
3132
AwsConnectionManager.getInstance(project).refreshConnectionState()
32-
AwsTelemetry.refreshExplorer(project)
3333
}
3434
}

jetbrains-core/src/software/aws/toolkits/jetbrains/services/telemetry/DefaultTelemetryPublisher.kt

Lines changed: 6 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -3,6 +3,7 @@
33

44
package software.aws.toolkits.jetbrains.services.telemetry
55

6+
import com.intellij.openapi.util.registry.Registry
67
import kotlinx.coroutines.withContext
78
import software.amazon.awssdk.auth.credentials.AnonymousCredentialsProvider
89
import software.amazon.awssdk.regions.Region
@@ -88,20 +89,21 @@ class DefaultTelemetryPublisher(
8889
private const val METADATA_AWS_REGION = "awsRegion"
8990

9091
private fun createDefaultTelemetryClient(): ToolkitTelemetryClient {
92+
val region = Region.of(Registry.get("aws.telemetry.region").asString())
9193
val sdkClient = AwsSdkClient.getInstance()
9294
return ToolkitClientManager.createNewClient(
9395
ToolkitTelemetryClient::class,
9496
sdkClient.sharedSdkClient(),
95-
Region.US_EAST_1,
97+
region,
9698
AWSCognitoCredentialsProvider(
97-
"us-east-1:820fd6d1-95c0-4ca4-bffb-3f01d32da842",
99+
Registry.get("aws.telemetry.identityPool").asString(),
98100
CognitoIdentityClient.builder()
99101
.credentialsProvider(AnonymousCredentialsProvider.create())
100-
.region(Region.US_EAST_1)
102+
.region(region)
101103
.httpClient(sdkClient.sharedSdkClient())
102104
.build()
103105
),
104-
endpointOverride = "https://client-telemetry.us-east-1.amazonaws.com"
106+
endpointOverride = Registry.get("aws.telemetry.endpoint").asString()
105107
)
106108
}
107109
}

0 commit comments

Comments
 (0)