@@ -16,7 +16,7 @@ import kotlinx.coroutines.launch
16
16
import software.aws.toolkits.core.utils.error
17
17
import software.aws.toolkits.core.utils.exists
18
18
import software.aws.toolkits.core.utils.getLogger
19
- import software.aws.toolkits.core.utils.warn
19
+ import software.aws.toolkits.core.utils.info
20
20
import software.aws.toolkits.jetbrains.core.coroutines.projectCoroutineScope
21
21
import software.aws.toolkits.jetbrains.services.codemodernizer.client.GumbyClient
22
22
import software.aws.toolkits.jetbrains.services.codemodernizer.model.CodeModernizerArtifact
@@ -26,7 +26,6 @@ import software.aws.toolkits.jetbrains.services.codemodernizer.summary.CodeModer
26
26
import software.aws.toolkits.jetbrains.utils.notifyInfo
27
27
import software.aws.toolkits.jetbrains.utils.notifyWarn
28
28
import software.aws.toolkits.resources.message
29
- import software.aws.toolkits.telemetry.CodeTransformApiNames
30
29
import software.aws.toolkits.telemetry.CodeTransformPatchViewerCancelSrcComponents
31
30
import software.aws.toolkits.telemetry.CodeTransformVCSViewerSrcComponents
32
31
import software.aws.toolkits.telemetry.CodetransformTelemetry
@@ -61,6 +60,7 @@ class ArtifactHandler(private val project: Project, private val clientAdaptor: G
61
60
62
61
suspend fun downloadArtifact (job : JobId ): DownloadArtifactResult {
63
62
isCurrentlyDownloading.set(true )
63
+ val downloadStartTime = Instant .now()
64
64
try {
65
65
// 1. Attempt reusing previously downloaded artifact for job
66
66
val previousArtifact = downloadedArtifacts.getOrDefault(job, null )
@@ -78,26 +78,11 @@ class ArtifactHandler(private val project: Project, private val clientAdaptor: G
78
78
79
79
// 2. Download the data
80
80
notifyDownloadStart()
81
- LOG .warn { " About to download the export result archive" }
82
- var apiStartTime: Instant = Instant .now()
83
- lateinit var apiEndTime: Instant
84
- val downloadResultsResponse: MutableList <ByteArray >
85
- try {
86
- downloadResultsResponse = clientAdaptor.downloadExportResultArchive(job)
87
- } catch (e: Exception ) {
88
- CodetransformTelemetry .logApiError(
89
- codeTransformApiNames = CodeTransformApiNames .ExportResultArchive ,
90
- codeTransformSessionId = CodeTransformTelemetryState .instance.getSessionId(),
91
- codeTransformApiErrorMessage = e.message.toString(),
92
- codeTransformJobId = job.id,
93
- )
94
- throw e // pass along error to callee
95
- } finally {
96
- apiEndTime = Instant .now()
97
- }
81
+ LOG .info { " About to download the export result archive" }
82
+ val downloadResultsResponse = clientAdaptor.downloadExportResultArchive(job)
98
83
99
84
// 3. Convert to zip
100
- LOG .warn { " Downloaded the export result archive, about to transform to zip" }
85
+ LOG .info { " Downloaded the export result archive, about to transform to zip" }
101
86
val path = Files .createTempFile(null , " .zip" )
102
87
var totalDownloadBytes = 0
103
88
Files .newOutputStream(path).use {
@@ -106,33 +91,23 @@ class ArtifactHandler(private val project: Project, private val clientAdaptor: G
106
91
totalDownloadBytes + = bytes.size
107
92
}
108
93
}
109
- CodetransformTelemetry .logApiLatency(
110
- codeTransformApiNames = CodeTransformApiNames .ExportResultArchive ,
111
- codeTransformSessionId = CodeTransformTelemetryState .instance.getSessionId(),
112
- codeTransformRunTimeLatency = calculateTotalLatency(apiStartTime, apiEndTime),
113
- codeTransformJobId = job.id,
114
- codeTransformTotalByteSize = totalDownloadBytes
115
- )
116
- LOG .warn { " Successfully converted the download to a zip at ${path.toAbsolutePath()} ." }
94
+ LOG .info { " Successfully converted the download to a zip at ${path.toAbsolutePath()} ." }
117
95
val zipPath = path.toAbsolutePath().toString()
118
96
119
97
// 4. Deserialize zip to CodeModernizerArtifact
120
- var telemetryErrorMessage = " "
98
+ var telemetryErrorMessage: String? = null
121
99
return try {
122
- apiStartTime = Instant .now()
123
100
val output = DownloadArtifactResult (CodeModernizerArtifact .create(zipPath), zipPath)
124
- apiEndTime = Instant .now()
125
101
downloadedArtifacts[job] = path
126
102
output
127
103
} catch (e: RuntimeException ) {
128
104
LOG .error { e.message.toString() }
129
- telemetryErrorMessage = e.message.toString()
130
- apiEndTime = Instant .now()
105
+ telemetryErrorMessage = " Unexpected error when downloading result"
131
106
DownloadArtifactResult (null , zipPath)
132
107
} finally {
133
108
CodetransformTelemetry .jobArtifactDownloadAndDeserializeTime(
134
109
codeTransformSessionId = CodeTransformTelemetryState .instance.getSessionId(),
135
- codeTransformRunTimeLatency = calculateTotalLatency(apiStartTime, apiEndTime ),
110
+ codeTransformRunTimeLatency = calculateTotalLatency(downloadStartTime, Instant .now() ),
136
111
codeTransformJobId = job.id,
137
112
codeTransformTotalByteSize = totalDownloadBytes,
138
113
codeTransformRuntimeError = telemetryErrorMessage
@@ -185,7 +160,7 @@ class ArtifactHandler(private val project: Project, private val clientAdaptor: G
185
160
}
186
161
187
162
fun notifyUnableToApplyPatch (patchPath : String ) {
188
- LOG .warn { " Unable to find patch for file: $patchPath " }
163
+ LOG .error { " Unable to find patch for file: $patchPath " }
189
164
notifyWarn(
190
165
message(" codemodernizer.notification.warn.view_diff_failed.title" ),
191
166
message(" codemodernizer.notification.warn.view_diff_failed.content" ),
@@ -195,7 +170,7 @@ class ArtifactHandler(private val project: Project, private val clientAdaptor: G
195
170
}
196
171
197
172
fun notifyUnableToShowSummary () {
198
- LOG .warn { " Unable to display summary" }
173
+ LOG .error { " Unable to display summary" }
199
174
notifyWarn(
200
175
message(" codemodernizer.notification.warn.view_summary_failed.title" ),
201
176
message(" codemodernizer.notification.warn.view_summary_failed.content" ),
0 commit comments