review fixes

This commit is contained in:
x032205
2025-10-10 14:37:52 -04:00
parent e752391dbf
commit 2f01d096c6
7 changed files with 36 additions and 22 deletions
@@ -31,6 +31,7 @@ export const gatewayV2DalFactory = (db: TDbClient) => {
if (isHeartbeatStale) {
const oneHourAgo = new Date(Date.now() - 60 * 60 * 1000);
void query.whereNotNull(`${TableName.GatewayV2}.heartbeat`);
void query.where(`${TableName.GatewayV2}.heartbeat`, "<", oneHourAgo);
void query.where((v) => {
void v
@@ -9,6 +9,7 @@ import { PgSqlLock } from "@app/keystore/keystore";
import { crypto } from "@app/lib/crypto";
import { DatabaseErrorCode } from "@app/lib/error-codes";
import { BadRequestError, DatabaseError, NotFoundError } from "@app/lib/errors";
import { groupBy } from "@app/lib/fn";
import { GatewayProxyProtocol } from "@app/lib/gateway/types";
import { withGatewayV2Proxy } from "@app/lib/gateway-v2/gateway-v2";
import { logger } from "@app/lib/logger";
@@ -902,13 +903,7 @@ export const gatewayV2ServiceFactory = ({
"Found gateways with last heartbeat over an hour ago. Sending notifications."
);
const gatewaysByOrg = unhealthyGateways.reduce<Record<string, (typeof unhealthyGateways)[number][]>>((acc, gw) => {
if (!acc[gw.orgId]) {
acc[gw.orgId] = [];
}
acc[gw.orgId].push(gw);
return acc;
}, {});
const gatewaysByOrg = groupBy(unhealthyGateways, (gw) => gw.orgId);
for await (const [orgId, gateways] of Object.entries(gatewaysByOrg)) {
try {
@@ -21,6 +21,7 @@ export const relayDalFactory = (db: TDbClient) => {
if (isHeartbeatStale) {
const oneHourAgo = new Date(Date.now() - 60 * 60 * 1000);
void query.whereNotNull(`${TableName.Relay}.heartbeat`);
void query.where(`${TableName.Relay}.heartbeat`, "<", oneHourAgo);
void query.where((v) => {
void v
@@ -8,6 +8,7 @@ import { OrgMembershipRole, TRelays } from "@app/db/schemas";
import { PgSqlLock } from "@app/keystore/keystore";
import { crypto } from "@app/lib/crypto";
import { BadRequestError, ForbiddenRequestError, NotFoundError } from "@app/lib/errors";
import { groupBy } from "@app/lib/fn";
import { createRelayConnection } from "@app/lib/gateway-v2/gateway-v2";
import { logger } from "@app/lib/logger";
import { ActorAuthMethod, ActorType } from "@app/services/auth/auth-type";
@@ -1220,14 +1221,7 @@ export const relayServiceFactory = ({
"Found relays with last heartbeat over an hour ago. Sending notifications."
);
const relaysByOrg = unhealthyRelays.reduce<Record<string, TRelays[]>>((acc, r) => {
const key = r.orgId ?? "instance";
if (!acc[key]) {
acc[key] = [];
}
acc[key].push(r);
return acc;
}, {});
const relaysByOrg = groupBy(unhealthyRelays, (r) => r.orgId ?? "instance");
for await (const [orgId, relays] of Object.entries(relaysByOrg)) {
try {
@@ -1244,7 +1238,7 @@ export const relayServiceFactory = ({
recipients,
subjectLine: "Relay Health Alert",
substitutions: {
type: "relay",
type: "instance-relay",
names: relayNames
},
template: SmtpTemplates.HealthAlert