institutional-trader/backend/scripts/checkDbConnection.js

65 lines
2.6 KiB
JavaScript
Raw Permalink Blame History

This file contains invisible Unicode characters

This file contains invisible Unicode characters that are indistinguishable to humans but may be processed differently by a computer. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

/**
* Check Database Connection Configuration
* Shows which database the application will connect to
*
* Usage: node scripts/checkDbConnection.js
*/
import dotenv from 'dotenv';
import { testConnection } from '../src/db.js';
dotenv.config();
console.log('🔍 Database Connection Configuration Check\n');
console.log('='.repeat(50));
console.log('\n📋 Environment Variables:');
console.log(' USE_LOCAL_DB:', process.env.USE_LOCAL_DB || '❌ not set');
console.log(' LOCAL_DB_HOST:', process.env.LOCAL_DB_HOST || '❌ not set (will default to: 100.121.163.23)');
console.log(' LOCAL_DB_PORT:', process.env.LOCAL_DB_PORT || '❌ not set (will default to: 5432)');
console.log(' LOCAL_DB_USER:', process.env.LOCAL_DB_USER || '❌ not set (will default to: postgres)');
console.log(' LOCAL_DB_NAME:', process.env.LOCAL_DB_NAME || '❌ not set (will default to: institutional_trader)');
console.log(' LOCAL_DB_PASSWORD:', process.env.LOCAL_DB_PASSWORD ? '✅ set' : '❌ not set');
console.log(' DATABASE_URL:', process.env.DATABASE_URL ? '✅ set (masked)' : '❌ not set');
console.log('\n🔌 Actual Connection Details:');
const actualHost = process.env.LOCAL_DB_HOST || '100.121.163.23';
const actualPort = process.env.LOCAL_DB_PORT || '5432';
const actualUser = process.env.LOCAL_DB_USER || 'postgres';
const actualDb = process.env.LOCAL_DB_NAME || 'institutional_trader';
console.log(` Host: ${actualHost}`);
console.log(` Port: ${actualPort}`);
console.log(` User: ${actualUser}`);
console.log(` Database: ${actualDb}`);
if (actualHost === 'localhost' || actualHost === '127.0.0.1') {
console.log('\n⚠ WARNING: You are connecting to localhost!');
console.log(' If you want to use the remote database at 100.121.163.23,');
console.log(' either:');
console.log(' 1. Remove LOCAL_DB_HOST from your .env file, OR');
console.log(' 2. Set LOCAL_DB_HOST=100.121.163.23 in your .env file');
} else if (actualHost === '100.121.163.23') {
console.log('\n✅ Correct: Connecting to remote database at 100.121.163.23');
} else {
console.log(`\n📌 Connecting to: ${actualHost}`);
}
console.log('\n🧪 Testing connection...');
testConnection()
.then(connected => {
if (connected) {
console.log('\n✅ Connection test successful!');
console.log(` Data will be saved to: ${actualHost}:${actualPort}/${actualDb}`);
} else {
console.log('\n❌ Connection test failed!');
console.log(' Please check your database credentials and network connectivity.');
}
process.exit(connected ? 0 : 1);
})
.catch(error => {
console.error('\n❌ Error testing connection:', error.message);
process.exit(1);
});