Update check-fire-engine.ts

This commit is contained in:
Nicolas 2025-01-18 23:53:33 -03:00
parent 4e8e58729a
commit 24ddcd4a6d

View File

@ -15,6 +15,10 @@ export async function checkFireEngine(req: Request, res: Response) {
const controller = new AbortController();
const timeout = setTimeout(() => controller.abort(), 30000);
const urls = ["https://roastmywebsite.ai", "https://example.com"];
let lastError : string | null = null;
for (const url of urls) {
try {
const response = await fetch(
`${process.env.FIRE_ENGINE_BETA_URL}/scrape`,
@ -25,7 +29,7 @@ export async function checkFireEngine(req: Request, res: Response) {
"X-Disable-Cache": "true",
},
body: JSON.stringify({
url: "https://roastmywebsite.ai",
url,
}),
signal: controller.signal,
},
@ -38,12 +42,8 @@ export async function checkFireEngine(req: Request, res: Response) {
return res.status(200).json({
data: responseData,
});
} else {
return res.status(response.status).json({
success: false,
error: `Fire engine returned status ${response.status}`,
});
}
lastError = `Fire engine returned status ${response.status}`;
} catch (error) {
if (error.name === "AbortError") {
return res.status(504).json({
@ -51,8 +51,18 @@ export async function checkFireEngine(req: Request, res: Response) {
error: "Request timed out after 30 seconds",
});
}
throw error;
lastError = error;
}
}
// If we get here, all retries failed
logger.error(lastError);
Sentry.captureException(lastError);
return res.status(500).json({
success: false,
error: "Internal server error - all retry attempts failed",
});
} catch (error) {
logger.error(error);
Sentry.captureException(error);