NeahNew/scripts/test-redis-env.js
2025-05-03 14:17:46 +02:00

45 lines
1.3 KiB
JavaScript

#!/usr/bin/env node
require('dotenv').config();
const Redis = require('ioredis');
console.log('Redis configuration from environment:');
console.log('- Host:', process.env.REDIS_HOST);
console.log('- Port:', process.env.REDIS_PORT);
console.log('- Password:', process.env.REDIS_PASSWORD ? '******** (set)' : '(not set)');
const redis = new Redis({
host: process.env.REDIS_HOST,
port: process.env.REDIS_PORT ? parseInt(process.env.REDIS_PORT) : undefined,
password: process.env.REDIS_PASSWORD,
maxRetriesPerRequest: 3,
retryStrategy: (times) => Math.min(times * 100, 3000)
});
redis.on('connect', () => {
console.log('✅ Connected to Redis successfully!');
// Test a simple operation
redis.set('test-key', 'Test value from environment test')
.then(() => redis.get('test-key'))
.then((value) => {
console.log('✅ Successfully set and retrieved a test key:', value);
redis.quit();
})
.catch((err) => {
console.error('❌ Error during Redis operations:', err);
redis.quit();
process.exit(1);
});
});
redis.on('error', (err) => {
console.error('❌ Redis connection error:', err);
process.exit(1);
});
// Add a timeout to avoid hanging indefinitely
setTimeout(() => {
console.error('❌ Connection timeout');
process.exit(1);
}, 5000);