Files
oneuptime/TestServer/API/Main.ts
Simon Larsen a5f05376b0 refactor: Update logger.debug statements for exiting node process
This commit updates the logger.debug statements in multiple files to log the message 'Exiting node process' instead of 'Exiting node process'. This change improves the logging consistency and ensures that the appropriate log level is used for this message.
2024-05-22 10:04:41 +01:00

89 lines
2.5 KiB
TypeScript

import LocalCache from 'CommonServer/Infrastructure/LocalCache';
import Express, {
ExpressRequest,
ExpressResponse,
ExpressRouter,
NextFunction,
RequestHandler,
} from 'CommonServer/Utils/Express';
import Response from 'CommonServer/Utils/Response';
import Sleep from 'Common/Types/Sleep';
import Typeof from 'Common/Types/Typeof';
import { JSONValue } from 'Common/Types/JSON';
import logger from 'CommonServer/Utils/Logger';
const router: ExpressRouter = Express.getRouter();
router.get(
'/',
async (
req: ExpressRequest,
res: ExpressResponse,
next: NextFunction
): Promise<void> => {
returnResponse(req, res, next);
}
);
router.post(
'/',
async (
req: ExpressRequest,
res: ExpressResponse,
next: NextFunction
): Promise<void> => {
returnResponse(req, res, next);
}
);
const returnResponse: RequestHandler = async (
req: ExpressRequest,
res: ExpressResponse,
next: NextFunction
): Promise<void> => {
try {
logger.debug('Request Headers: ');
logger.debug(req.headers);
logger.debug('Request Body: ');
logger.debug(req.body);
const responseCode: number | undefined =
LocalCache.getNumber('TestServer', 'responseCode') || 200;
const responseTime: number | undefined =
LocalCache.getNumber('TestServer', 'responseTime') || 0;
const responseBody: string | undefined =
LocalCache.getString('TestServer', 'responseBody') || '';
let responseHeaders: JSONValue | undefined =
LocalCache.getJSON('TestServer', 'responseHeaders') || {};
logger.debug('Response Code: ' + responseCode);
logger.debug('Response Time: ' + responseTime);
logger.debug('Response Body: ');
logger.debug(responseBody);
logger.debug('Response Headers: ');
logger.debug(responseHeaders);
if (responseHeaders && typeof responseHeaders === Typeof.String) {
responseHeaders = JSON.parse(responseHeaders.toString());
}
if (responseTime > 0) {
await Sleep.sleep(responseTime);
}
// middleware marks the probe as alive.
// so we don't need to do anything here.
return Response.sendCustomResponse(
req,
res,
responseCode,
responseBody,
responseHeaders ? (responseHeaders as any) : {}
);
} catch (err) {
return next(err);
}
};
export default router;