Skip to content

Commit 02023b5

Browse files
committed
Trigging getDirSize calculation only for project scans to improve VSCode performance
1 parent 11ea2a7 commit 02023b5

File tree

1 file changed

+13
-8
lines changed

1 file changed

+13
-8
lines changed

packages/core/src/codewhisperer/commands/startSecurityScan.ts

Lines changed: 13 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -255,7 +255,7 @@ export async function startSecurityScan(
255255
codeScanState.setToNotStarted()
256256
codeScanTelemetryEntry.duration = performance.now() - codeScanStartTime
257257
codeScanTelemetryEntry.codeScanServiceInvocationsDuration = performance.now() - serviceInvocationStartTime
258-
await emitCodeScanTelemetry(codeScanTelemetryEntry)
258+
await emitCodeScanTelemetry(codeScanTelemetryEntry, scope)
259259
}
260260
}
261261

@@ -283,15 +283,20 @@ export function showSecurityScanResults(
283283
}
284284
}
285285

286-
export async function emitCodeScanTelemetry(codeScanTelemetryEntry: CodeScanTelemetryEntry) {
286+
export async function emitCodeScanTelemetry(
287+
codeScanTelemetryEntry: CodeScanTelemetryEntry,
288+
scope: CodeWhispererConstants.CodeAnalysisScope
289+
) {
287290
codeScanTelemetryEntry.codewhispererCodeScanProjectBytes = 0
288291
const now = performance.now()
289-
for (const folder of vscode.workspace.workspaceFolders ?? []) {
290-
codeScanTelemetryEntry.codewhispererCodeScanProjectBytes += await getDirSize(
291-
folder.uri.fsPath,
292-
now,
293-
CodeWhispererConstants.projectSizeCalculateTimeoutSeconds * 1000
294-
)
292+
if (scope === CodeWhispererConstants.CodeAnalysisScope.PROJECT) {
293+
for (const folder of vscode.workspace.workspaceFolders ?? []) {
294+
codeScanTelemetryEntry.codewhispererCodeScanProjectBytes += await getDirSize(
295+
folder.uri.fsPath,
296+
now,
297+
CodeWhispererConstants.projectSizeCalculateTimeoutSeconds * 1000
298+
)
299+
}
295300
}
296301
telemetry.codewhisperer_securityScan.emit({
297302
...codeScanTelemetryEntry,

0 commit comments

Comments
 (0)