From fd3816176968286d734a9704517b64c73aadc3c3 Mon Sep 17 00:00:00 2001 From: Jesse Wierzbinski Date: Tue, 21 May 2024 15:23:48 -1000 Subject: [PATCH] fix(federation): :bug: Fix debug logger not correctly outputting --- database/entities/Federation.ts | 10 +++++++++- utils/api.ts | 7 +++++-- utils/loggers.ts | 1 + 3 files changed, 15 insertions(+), 3 deletions(-) diff --git a/database/entities/Federation.ts b/database/entities/Federation.ts index f78e3f6d..b1f13ef4 100644 --- a/database/entities/Federation.ts +++ b/database/entities/Federation.ts @@ -1,3 +1,4 @@ +import { debugRequest } from "@api"; import { type EntityValidator, SignatureConstructor, @@ -42,5 +43,12 @@ export const objectToInboxRequest = async ( body: JSON.stringify(object), }); - return await ctor.sign(request); + const signed = await ctor.sign(request); + + if (config.debug.federation) { + // Debug request + await debugRequest(signed); + } + + return signed; }; diff --git a/utils/api.ts b/utils/api.ts index 4c9de52d..5a0e974d 100644 --- a/utils/api.ts +++ b/utils/api.ts @@ -24,7 +24,7 @@ import { fromZodError } from "zod-validation-error"; import type { Application } from "~database/entities/Application"; import { getFromHeader } from "~database/entities/User"; import type { User } from "~packages/database-interface/user"; -import { LogLevel } from "~packages/log-manager"; +import { LogLevel, LogManager } from "~packages/log-manager"; import type { APIRouteMetadata, HttpVerb } from "~types/api"; export const applyConfig = (routeMeta: APIRouteMetadata) => { @@ -302,7 +302,10 @@ export const jsonOrForm = () => { }); }; -export const debugRequest = async (req: Request, logger = consoleLogger) => { +export const debugRequest = async ( + req: Request, + logger = new LogManager(Bun.stdout), +) => { const body = await req.clone().text(); await logger.log( LogLevel.DEBUG, diff --git a/utils/loggers.ts b/utils/loggers.ts index dd6b6e0a..4d9a5d5b 100644 --- a/utils/loggers.ts +++ b/utils/loggers.ts @@ -10,6 +10,7 @@ const isEntry = true; export const logger = new LogManager( isEntry ? requests_log : Bun.file("/dev/null"), ); + export const consoleLogger = new LogManager( isEntry ? Bun.stdout : Bun.file("/dev/null"), !noColors,