Skip to content

Commit ccec284

Browse files
authored
fix(amazonq): Fix JetBrains inline chat 400 error due to empty conversationId in telemetry (#6020)
1 parent d069c28 commit ccec284

File tree

1 file changed

+6
-5
lines changed
  • plugins/amazonq/chat/jetbrains-community/src/software/aws/toolkits/jetbrains/services/cwc/clients/chat/v1

1 file changed

+6
-5
lines changed

plugins/amazonq/chat/jetbrains-community/src/software/aws/toolkits/jetbrains/services/cwc/clients/chat/v1/ChatSessionV1.kt

Lines changed: 6 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -51,6 +51,7 @@ import software.aws.toolkits.jetbrains.services.cwc.clients.chat.model.Suggested
5151
import software.aws.toolkits.jetbrains.services.cwc.clients.chat.model.Suggestion
5252
import software.aws.toolkits.jetbrains.services.cwc.clients.chat.model.TriggerType
5353
import software.aws.toolkits.jetbrains.services.cwc.editor.context.ActiveFileContext
54+
import java.util.UUID
5455

5556
class ChatSessionV1(
5657
private val project: Project,
@@ -62,13 +63,13 @@ class ChatSessionV1(
6263
var requestId: String = ""
6364
var statusCode: Int = 0
6465
val responseHandler = GenerateAssistantResponseResponseHandler.builder()
65-
.onResponse {
66-
requestId = it.responseMetadata().requestId()
67-
statusCode = it.sdkHttpResponse().statusCode()
68-
conversationId = it.conversationId()
66+
.onResponse { response ->
67+
requestId = response.responseMetadata().requestId()
68+
statusCode = response.sdkHttpResponse().statusCode()
69+
conversationId = response.conversationId().takeIf { !it.isNullOrBlank() } ?: "client-inline-${UUID.randomUUID()}"
6970

7071
logger.info {
71-
val metadata = it.responseMetadata()
72+
val metadata = response.responseMetadata()
7273
"Response to tab: ${data.tabId}, conversationId: $conversationId, requestId: ${metadata.requestId()}, metadata: $metadata"
7374
}
7475
}

0 commit comments

Comments
 (0)