feat: add runtime worker heartbeat sidecar

This commit is contained in:
John
2026-07-02 09:03:30 +08:00
parent a0af049fa7
commit e24e6ca4a7
5 changed files with 277 additions and 2 deletions
+10
View File
@@ -312,6 +312,11 @@ function createRuntimeRouter({
key('worker', workerId, 'last_first_token_ms'),
key('worker', workerId, 'last_first_token_at'),
key('worker', workerId, 'first_token_count'),
key('worker', workerId, 'heartbeat_source'),
key('worker', workerId, 'heartbeat_ok'),
key('worker', workerId, 'heartbeat_status_code'),
key('worker', workerId, 'heartbeat_latency_ms'),
key('worker', workerId, 'heartbeat_error'),
])
.catch(() => [])
: [];
@@ -341,6 +346,11 @@ function createRuntimeRouter({
lastFirstTokenMs: readNumber(values?.[18]),
lastFirstTokenAt: values?.[19] ? Number(values[19]) : null,
firstTokenCount: readNumber(values?.[20]),
heartbeatSource: values?.[21] ?? null,
heartbeatOk: values?.[22] == null ? null : /^(1|true|yes)$/i.test(String(values[22])),
heartbeatStatusCode: readNumber(values?.[23]),
heartbeatLatencyMs: readNumber(values?.[24]),
heartbeatError: values?.[25] || null,
firstToken5m,
firstToken1h,
score: workerScoreFromValues(values),