CognxSafeTrack commited on
Commit Β·
804312b
1
Parent(s): 2adbb41
fix: open port before heavy initializations to prevent 502
Browse files- apps/api/src/index.ts +10 -6
apps/api/src/index.ts
CHANGED
|
@@ -338,17 +338,21 @@ server.setErrorHandler((error, request, reply) => {
|
|
| 338 |
// ββ Start Server βββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ
|
| 339 |
const start = async () => {
|
| 340 |
try {
|
| 341 |
-
await setupRateLimit();
|
| 342 |
-
startCleanupCron();
|
| 343 |
const port = parseInt(process.env.PORT || '8080');
|
| 344 |
const isGateway = process.env.IS_GATEWAY === 'true' || process.env.HF_SPACE_ID !== undefined;
|
|
|
|
|
|
|
|
|
|
|
|
|
| 345 |
logger.info(`[STARTUP] Mode: ${isGateway ? 'GATEWAY (Forwarding Only)' : 'DIRECT (Processing)'}`);
|
| 346 |
-
logger.info(`[STARTUP] Forwarding to: ${process.env.RAILWAY_INTERNAL_URL || 'NONE'}`);
|
| 347 |
|
| 348 |
-
|
| 349 |
-
logger.
|
|
|
|
|
|
|
|
|
|
| 350 |
} catch (err) {
|
| 351 |
-
logger.error(err);
|
| 352 |
process.exit(1);
|
| 353 |
}
|
| 354 |
};
|
|
|
|
| 338 |
// ββ Start Server βββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ
|
| 339 |
const start = async () => {
|
| 340 |
try {
|
|
|
|
|
|
|
| 341 |
const port = parseInt(process.env.PORT || '8080');
|
| 342 |
const isGateway = process.env.IS_GATEWAY === 'true' || process.env.HF_SPACE_ID !== undefined;
|
| 343 |
+
|
| 344 |
+
// 1. Listen IMMEDIATELY so Railway sees the port as open
|
| 345 |
+
await server.listen({ port, host: '0.0.0.0' });
|
| 346 |
+
logger.info(`π Server listening on http://0.0.0.0:${port}`);
|
| 347 |
logger.info(`[STARTUP] Mode: ${isGateway ? 'GATEWAY (Forwarding Only)' : 'DIRECT (Processing)'}`);
|
|
|
|
| 348 |
|
| 349 |
+
// 2. Initialize background services
|
| 350 |
+
await setupRateLimit().catch(err => logger.error('[STARTUP] Rate limit setup failed:', err));
|
| 351 |
+
startCleanupCron();
|
| 352 |
+
|
| 353 |
+
logger.info('[STARTUP] Background services initialized.');
|
| 354 |
} catch (err) {
|
| 355 |
+
logger.error('[STARTUP] FATAL ERROR:', err);
|
| 356 |
process.exit(1);
|
| 357 |
}
|
| 358 |
};
|