Skip to content

Commit 0538f85

Browse files
committed
initialize usage manager after env overrides
1 parent 03923c7 commit 0538f85

File tree

1 file changed

+28
-14
lines changed

1 file changed

+28
-14
lines changed

packages/cli-v3/src/entryPoints/managed-run-worker.ts

Lines changed: 28 additions & 14 deletions
Original file line numberDiff line numberDiff line change
@@ -98,9 +98,6 @@ process.on("uncaughtException", function (error, origin) {
9898
}
9999
});
100100

101-
const usageIntervalMs = getEnvVar("USAGE_HEARTBEAT_INTERVAL_MS");
102-
const usageEventUrl = getEnvVar("USAGE_EVENT_URL");
103-
const triggerJWT = getEnvVar("TRIGGER_JWT");
104101
const heartbeatIntervalMs = getEnvVar("HEARTBEAT_INTERVAL_MS");
105102

106103
const standardLocalsManager = new StandardLocalsManager();
@@ -112,17 +109,8 @@ lifecycleHooks.setGlobalLifecycleHooksManager(standardLifecycleHooksManager);
112109
const standardRunTimelineMetricsManager = new StandardRunTimelineMetricsManager();
113110
runTimelineMetrics.setGlobalManager(standardRunTimelineMetricsManager);
114111

115-
const devUsageManager = new DevUsageManager();
116-
const prodUsageManager = new ProdUsageManager(devUsageManager, {
117-
heartbeatIntervalMs: usageIntervalMs ? parseInt(usageIntervalMs, 10) : undefined,
118-
url: usageEventUrl,
119-
jwt: triggerJWT,
120-
});
121-
122-
usage.setGlobalUsageManager(prodUsageManager);
123-
timeout.setGlobalManager(new UsageTimeoutManager(devUsageManager));
124-
125112
resourceCatalog.setGlobalResourceCatalog(new StandardResourceCatalog());
113+
126114
const durableClock = new DurableClock();
127115
clock.setGlobalClock(durableClock);
128116
const runMetadataManager = new StandardMetadataManager(
@@ -258,6 +246,12 @@ const zodIpc = new ZodIpcConnection({
258246
});
259247
}
260248

249+
initializeUsageManager({
250+
usageIntervalMs: getEnvVar("USAGE_HEARTBEAT_INTERVAL_MS"),
251+
usageEventUrl: getEnvVar("USAGE_EVENT_URL"),
252+
triggerJWT: getEnvVar("TRIGGER_JWT"),
253+
});
254+
261255
standardRunTimelineMetricsManager.registerMetricsFromExecution(metrics);
262256

263257
console.log(`[${new Date().toISOString()}] Received EXECUTE_TASK_RUN`, execution);
@@ -509,7 +503,7 @@ async function flushAll(timeoutInMs: number = 10_000) {
509503
async function flushUsage(timeoutInMs: number = 10_000) {
510504
const now = performance.now();
511505

512-
await Promise.race([prodUsageManager.flush(), setTimeout(timeoutInMs)]);
506+
await Promise.race([usage.flush(), setTimeout(timeoutInMs)]);
513507

514508
const duration = performance.now() - now;
515509

@@ -551,6 +545,26 @@ async function flushMetadata(timeoutInMs: number = 10_000) {
551545
};
552546
}
553547

548+
function initializeUsageManager({
549+
usageIntervalMs,
550+
usageEventUrl,
551+
triggerJWT,
552+
}: {
553+
usageIntervalMs?: string;
554+
usageEventUrl?: string;
555+
triggerJWT?: string;
556+
}) {
557+
const devUsageManager = new DevUsageManager();
558+
const prodUsageManager = new ProdUsageManager(devUsageManager, {
559+
heartbeatIntervalMs: usageIntervalMs ? parseInt(usageIntervalMs, 10) : undefined,
560+
url: usageEventUrl,
561+
jwt: triggerJWT,
562+
});
563+
564+
usage.setGlobalUsageManager(prodUsageManager);
565+
timeout.setGlobalManager(new UsageTimeoutManager(devUsageManager));
566+
}
567+
554568
const managedWorkerRuntime = new ManagedRuntimeManager(zodIpc, true);
555569

556570
runtime.setGlobalRuntimeManager(managedWorkerRuntime);

0 commit comments

Comments
 (0)