From 5a46aad11b2f196d9bfacbb5e9ac6319790003e1 Mon Sep 17 00:00:00 2001 From: Howard Chung Date: Mon, 27 Jan 2025 21:40:47 +0000 Subject: [PATCH] update cleanup logic --- server/server.ts | 2 ++ server/vm/base.ts | 6 ++++-- 2 files changed, 6 insertions(+), 2 deletions(-) diff --git a/server/server.ts b/server/server.ts index 9989fbf4f3..a5a1769c3d 100644 --- a/server/server.ts +++ b/server/server.ts @@ -885,6 +885,7 @@ async function getStats() { const vBrowserFails = await getRedisCountDay('vBrowserFails'); const vBrowserStagingFails = await getRedisCountDay('vBrowserStagingFails'); const vBrowserReimages = await getRedisCountDay('vBrowserReimage'); + const vBrowserCleanups = await getRedisCountDay('vBrowserCleanup'); const vBrowserStopTimeout = await getRedisCountDay( 'vBrowserTerminateTimeout', ); @@ -1009,6 +1010,7 @@ async function getStats() { vBrowserFails, vBrowserStagingFails, vBrowserReimages, + vBrowserCleanups, vBrowserStopManual, vBrowserStopEmpty, vBrowserStopTimeout, diff --git a/server/vm/base.ts b/server/vm/base.ts index d1ef070110..b97de88463 100644 --- a/server/vm/base.ts +++ b/server/vm/base.ts @@ -384,7 +384,7 @@ export abstract class VMManager { for (let i = 0; i < allVMs.length; i++) { const server = allVMs[i]; if (!inUse.has(server.id)) { - // TODO log how many cleanups we do + redisCount('vBrowserCleanup'); console.log('[CLEANUP]', this.getPoolName(), server.id); try { await this.resetVM(server.id); @@ -476,7 +476,9 @@ export abstract class VMManager { // VM didn't come up. Try reimaging await this.reimageVM(vmid); redisCount('vBrowserReimage'); - await this.resetVM(vmid); + // Don't reset here since reboot will fail while VM is reimaging + // Cleanup will process it eventually + // await this.resetVM(vmid); } if (retryCount >= 180) { throw new Error('too many attempts on vm ' + vmid);