CognxSafeTrack commited on
Commit
804312b
Β·
1 Parent(s): 2adbb41

fix: open port before heavy initializations to prevent 502

Browse files
Files changed (1) hide show
  1. 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
- await server.listen({ port, host: '0.0.0.0' });
349
- logger.info(`Server listening on http://0.0.0.0:${port}`);
 
 
 
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
  };