From 09bcfe703fd5012ba85bc04d7c7dc084dc51c328 Mon Sep 17 00:00:00 2001 From: Bas950 Date: Tue, 17 Sep 2024 10:54:48 +0200 Subject: [PATCH] chore: scan count config --- apps/api-master/src/functions/updateActivePresenceGauge.ts | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/apps/api-master/src/functions/updateActivePresenceGauge.ts b/apps/api-master/src/functions/updateActivePresenceGauge.ts index 43877bb..1e7576c 100644 --- a/apps/api-master/src/functions/updateActivePresenceGauge.ts +++ b/apps/api-master/src/functions/updateActivePresenceGauge.ts @@ -1,3 +1,4 @@ +import process from "node:process"; import pLimit from "p-limit"; import { mainLog, redis } from "../index.js"; import { activePresenceGauge } from "../tracing.js"; @@ -6,6 +7,8 @@ import { insertIpData } from "./insertIpData.js"; export const updateActivePresenceGaugeLimit = pLimit(1); let log: debug.Debugger | undefined; +const scanCount = Number.parseInt(process.env.SCAN_COUNT || "1000", 10); + export async function updateActivePresenceGauge() { await updateActivePresenceGaugeLimit(async () => { log ??= mainLog.extend("Heartbeat-Updates"); @@ -20,7 +23,7 @@ export async function updateActivePresenceGauge() { }>(); do { - const [newCursor, keys] = await redis.scan(cursor, "MATCH", pattern, "COUNT", 1000); + const [newCursor, keys] = await redis.scan(cursor, "MATCH", pattern, "COUNT", scanCount); cursor = newCursor; //* Use pipelining for batch Redis operations