@@ -11,7 +11,6 @@ import software.amazon.awssdk.services.codewhispererruntime.model.Transformation
1111import software.aws.toolkits.jetbrains.services.codemodernizer.model.CustomerSelection
1212import software.aws.toolkits.jetbrains.services.codemodernizer.model.JobId
1313import software.aws.toolkits.jetbrains.services.codemodernizer.model.ValidationResult
14- import software.aws.toolkits.jetbrains.services.codemodernizer.state.CodeModernizerSessionState
1514import software.aws.toolkits.jetbrains.services.codemodernizer.state.CodeTransformTelemetryState
1615import software.aws.toolkits.jetbrains.services.codemodernizer.utils.calculateTotalLatency
1716import software.aws.toolkits.jetbrains.services.codemodernizer.utils.getAuthType
@@ -24,8 +23,8 @@ import software.aws.toolkits.telemetry.CodeTransformCancelSrcComponents
2423import software.aws.toolkits.telemetry.CodeTransformJavaSourceVersionsAllowed
2524import software.aws.toolkits.telemetry.CodeTransformJavaTargetVersionsAllowed
2625import software.aws.toolkits.telemetry.CodeTransformPreValidationError
27- import software.aws.toolkits.telemetry.CodeTransformVCSViewerSrcComponents
2826import software.aws.toolkits.telemetry.CodetransformTelemetry
27+ import software.aws.toolkits.telemetry.MetricResult
2928import software.aws.toolkits.telemetry.Result
3029import java.time.Instant
3130import java.util.Base64
@@ -36,7 +35,6 @@ import java.util.Base64
3635@Service(Service .Level .PROJECT )
3736class CodeTransformTelemetryManager (private val project : Project ) {
3837 private val sessionId get() = CodeTransformTelemetryState .instance.getSessionId()
39- private val currentJobStatus get() = CodeModernizerSessionState .getInstance(project).currentJobStatus.toString()
4038
4139 fun initiateTransform (telemetryErrorMessage : String? = null) {
4240 CodetransformTelemetry .initiateTransform(
@@ -65,13 +63,14 @@ class CodeTransformTelemetryManager(private val project: Project) {
6563 )
6664 }
6765
68- fun submitSelection (userChoice : String , customerSelection : CustomerSelection ? = null, telemetryErrorMessage : String? = null) {
66+ fun submitSelection (userChoice : String , jobId : String? = null, customerSelection : CustomerSelection ? = null, telemetryErrorMessage : String? = null) {
6967 CodetransformTelemetry .submitSelection(
70- // TODO: remove below 2 lines (JavaSource / JavaTarget) once BI is updated to use source / target
68+ // TODO: remove the below 2 lines (JavaSource / JavaTarget) once BI is updated to use source / target
7169 codeTransformJavaSourceVersionsAllowed = CodeTransformJavaSourceVersionsAllowed .from(customerSelection?.sourceJavaVersion?.name.orEmpty()),
7270 codeTransformJavaTargetVersionsAllowed = CodeTransformJavaTargetVersionsAllowed .from(customerSelection?.targetJavaVersion?.name.orEmpty()),
7371 codeTransformSessionId = sessionId,
7472 codeTransformProjectId = customerSelection?.let { getProjectHash(it) },
73+ codeTransformJobId = jobId,
7574 source = if (userChoice == " Confirm-Java" ) customerSelection?.sourceJavaVersion?.name.orEmpty() else customerSelection?.sourceVendor.orEmpty(),
7675 target = if (userChoice == " Confirm-Java" ) customerSelection?.targetJavaVersion?.name.orEmpty() else customerSelection?.targetVendor.orEmpty(),
7776 userChoice = userChoice,
@@ -128,25 +127,6 @@ class CodeTransformTelemetryManager(private val project: Project) {
128127 )
129128 }
130129
131- fun viewArtifact (
132- artifactType : CodeTransformArtifactType ,
133- jobId : JobId ,
134- userChoice : String ,
135- source : CodeTransformVCSViewerSrcComponents ,
136- telemetryErrorMessage : String? = null,
137- ) {
138- CodetransformTelemetry .viewArtifact(
139- codeTransformArtifactType = artifactType,
140- codeTransformVCSViewerSrcComponents = source,
141- codeTransformSessionId = sessionId,
142- codeTransformJobId = jobId.id,
143- codeTransformStatus = currentJobStatus,
144- userChoice = userChoice,
145- result = if (telemetryErrorMessage.isNullOrEmpty()) Result .Succeeded else Result .Failed ,
146- reason = telemetryErrorMessage,
147- )
148- }
149-
150130 fun getProjectHash (customerSelection : CustomerSelection ) = Base64 .getEncoder().encodeToString(
151131 DigestUtils .sha256(customerSelection.configurationFile?.toNioPath()?.toAbsolutePath().toString())
152132 )
@@ -196,12 +176,12 @@ class CodeTransformTelemetryManager(private val project: Project) {
196176
197177 fun logHil (jobId : String , metaData : HilTelemetryMetaData , success : Boolean , reason : String ) {
198178 CodetransformTelemetry .humanInTheLoop(
199- project,
200- jobId,
201- metaData.toString(),
202- sessionId,
203- reason,
204- success,
179+ project = project ,
180+ codeTransformJobId = jobId,
181+ codeTransformMetadata = metaData.toString(),
182+ codeTransformSessionId = sessionId,
183+ reason = reason ,
184+ result = if ( success) MetricResult . Succeeded else MetricResult . Failed ,
205185 )
206186 }
207187
0 commit comments