@@ -148,7 +148,26 @@ class CawsConnectionProvider : GatewayConnectionProvider {
148
148
canBeCancelled = true ,
149
149
isIndeterminate = true ,
150
150
) {
151
- validateEnvironmentIsRunning(indicator, environmentActions)
151
+ val timeBeforeEnvIsRunningCheck = System .currentTimeMillis()
152
+ var validateEnvIsRunningResult = TelemetryResult .Succeeded
153
+ var errorMessageDuringStateValidation: String? = null
154
+ try {
155
+ validateEnvironmentIsRunning(indicator, environmentActions)
156
+ } catch (e: Exception ) {
157
+ validateEnvIsRunningResult = TelemetryResult .Failed
158
+ errorMessageDuringStateValidation = e.message
159
+ throw e
160
+ } finally {
161
+ CodecatalystTelemetry .devEnvironmentWorkflowStatistic(
162
+ project = null ,
163
+ userId = userId,
164
+ result = validateEnvIsRunningResult,
165
+ duration = (System .currentTimeMillis() - timeBeforeEnvIsRunningCheck).toDouble(),
166
+ codecatalystDevEnvironmentWorkflowStep = " validateEnvRunning" ,
167
+ codecatalystDevEnvironmentWorkflowError = errorMessageDuringStateValidation
168
+ )
169
+ }
170
+
152
171
val isSmallInstance = cawsClient.getDevEnvironment {
153
172
it.id(envId)
154
173
it.projectName(projectName)
@@ -350,7 +369,10 @@ class CawsConnectionProvider : GatewayConnectionProvider {
350
369
}
351
370
}
352
371
353
- private fun validateEnvironmentIsRunning (indicator : ProgressIndicator , environmentActions : WorkspaceActions ) {
372
+ private fun validateEnvironmentIsRunning (
373
+ indicator : ProgressIndicator ,
374
+ environmentActions : WorkspaceActions
375
+ ) {
354
376
when (val status = environmentActions.getEnvironmentDetails().status()) {
355
377
DevEnvironmentStatus .PENDING , DevEnvironmentStatus .STARTING -> environmentActions.waitForTaskReady(indicator)
356
378
DevEnvironmentStatus .RUNNING -> {
0 commit comments