institutional-trader/backend/scripts/checkDbConnection.js

65 lines
2.6 KiB
JavaScript
Raw 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);
});