reponseログ取得 WIP

This commit is contained in:
ろむねこ 2024-06-26 15:49:26 +09:00
parent 998d1de9cb
commit 186f3aeac8
Signed by: Fujimatsu
GPG Key ID: FA1F39A1BA37D168
2 changed files with 19 additions and 4 deletions

View File

@ -5,6 +5,7 @@ import metaRouter from "@src/routers/metaRouter";
import parentRouter from "@src/routers/parent"; import parentRouter from "@src/routers/parent";
import childRouter from "@src/routers/child"; import childRouter from "@src/routers/child";
import logging from "./routers/middlewares/logging"; import logging from "./routers/middlewares/logging";
import responseLogging from "./routers/middlewares/responseLogging";
import os from "os"; import os from "os";
import { getCommitHash, getCommitMessage } from "@utils/gitMeta"; import { getCommitHash, getCommitMessage } from "@utils/gitMeta";
import { Response, Request, Router } from 'express'; import { Response, Request, Router } from 'express';
@ -92,12 +93,12 @@ app.use('/docs', swaggerRouter);
logger.info("Swagger enabled and mounted at /docs"); logger.info("Swagger enabled and mounted at /docs");
app.use('/parent', parentRouter); app.use('/parent', parentRouter, responseLogging);
logger.debug("Parent router mounted at /parent"); logger.debug("Parent router mounted at /parent");
app.use('/child', childRouter); app.use('/child', childRouter, responseLogging);
logger.debug("Child router mounted at /child"); logger.debug("Child router mounted at /child");
app.use('/debug', debugRouter); // TODO: NODE_ENVに応じてマウントをやめる app.use('/debug', debugRouter, responseLogging); // TODO: NODE_ENVに応じてマウントをやめる
app.use('/meta', metaRouter); app.use('/meta', metaRouter, responseLogging);
logger.debug("Common routes mounted at /meta and /debug"); logger.debug("Common routes mounted at /meta and /debug");
logger.success("Routers mounted successfully"); logger.success("Routers mounted successfully");

View File

@ -0,0 +1,14 @@
// レスポンスBodyのロギング
import { getRequestLogger } from "@src/singleton";
import { NextFunction, Response, Request } from "express";
export default function responseLogging(req: Request, res: Response, next: NextFunction) {
const logger = getRequestLogger();
const originalResp = res.send;
res.send = function (body: any) {
logger.debug(`Response body: ${JSON.stringify(body)}`);
return originalResp.call(this, body);
};
next();
}