Files
yourpart3/backend/config/loadEnv.js
Torsten Schulz (local) 9b23cf22b6 Änderung: Erweiterung der Protokollausgaben in loadEnv.js
Änderungen:
- Hinzufügung von Protokollausgaben zur Anzeige des Ladeprozesses der .env-Datei, einschließlich Existenz- und Lesbarkeitsprüfungen.
- Detaillierte Fehlermeldungen bei Problemen mit dem Laden der .env-Datei.

Diese Anpassungen verbessern die Transparenz und erleichtern die Fehlersuche beim Laden von Umgebungsvariablen.
2025-09-15 09:09:32 +02:00

47 lines
1.7 KiB
JavaScript

// Centralized environment loader
import path from 'path';
import { fileURLToPath } from 'url';
import dotenv from 'dotenv';
import fs from 'fs';
const __filename = fileURLToPath(import.meta.url);
const __dirname = path.dirname(__filename);
// Versuche zuerst Produktions-.env, dann lokale .env
const productionEnvPath = '/opt/yourpart/backend/.env';
const localEnvPath = path.resolve(__dirname, '../.env');
let envPath = localEnvPath; // Fallback
if (fs.existsSync(productionEnvPath)) {
envPath = productionEnvPath;
console.log('[env] Lade Produktions-.env:', productionEnvPath);
} else {
console.log('[env] Lade lokale .env:', localEnvPath);
}
// Lade .env-Datei
console.log('[env] Versuche .env zu laden von:', envPath);
console.log('[env] Datei existiert:', fs.existsSync(envPath));
console.log('[env] Datei lesbar:', fs.accessSync ? (() => { try { fs.accessSync(envPath, fs.constants.R_OK); return true; } catch { return false; } })() : 'unbekannt');
const result = dotenv.config({ path: envPath });
if (result.error) {
console.warn('[env] Konnte .env nicht laden:', result.error.message);
console.warn('[env] Fehler-Details:', result.error);
} else {
console.log('[env] .env erfolgreich geladen von:', envPath);
console.log('[env] Geladene Variablen:', Object.keys(result.parsed || {}));
}
// Debug: Zeige Redis-Konfiguration
console.log('[env] Redis-Konfiguration:');
console.log('[env] REDIS_HOST:', process.env.REDIS_HOST);
console.log('[env] REDIS_PORT:', process.env.REDIS_PORT);
console.log('[env] REDIS_PASSWORD:', process.env.REDIS_PASSWORD ? '***gesetzt***' : 'NICHT GESETZT');
console.log('[env] REDIS_URL:', process.env.REDIS_URL);
if (!process.env.SECRET_KEY) {
console.warn('[env] SECRET_KEY nicht gesetzt in .env');
}
export {};