const redis = require('redis'); require('dotenv').config(); async function debugEvents() { const client = redis.createClient({ url: process.env.REDIS_URL || 'redis://localhost:6379' }); try { await client.connect(); console.log('āœ… Connected to Redis'); // Check what event keys exist const eventKeys = await client.keys('event:*'); console.log('\nšŸ“‹ Found Redis keys:', eventKeys); // Check global stats const globalStats = await client.hGetAll('global:stats'); console.log('\nšŸŒ Global stats:', globalStats); // Check each event const metaKeys = eventKeys.filter(key => key.includes(':meta')); console.log('\nšŸŽ« Event Details:'); for (const metaKey of metaKeys) { const eventId = metaKey.match(/event:(\d+):meta/)[1]; const ticketKey = `event:${eventId}:tickets`; const meta = await client.hGetAll(metaKey); const ticketCount = await client.lLen(ticketKey); console.log(`\n Event ${eventId}:`); console.log(` Name: ${meta.name}`); console.log(` Total Tickets: ${meta.totalTickets}`); console.log(` Sold Tickets: ${meta.soldTickets}`); console.log(` Remaining: ${ticketCount}`); console.log(` Created: ${meta.createdAt}`); } // Test if we can check existence of event 5 const event5Exists = await client.exists('event:5:meta'); console.log(`\nšŸ” Event 5 exists: ${event5Exists ? 'YES' : 'NO'}`); if (event5Exists) { const event5Meta = await client.hGetAll('event:5:meta'); const event5Tickets = await client.lLen('event:5:tickets'); console.log('šŸ“Š Event 5 details:', event5Meta); console.log(`šŸŽ« Event 5 remaining tickets: ${event5Tickets}`); } } catch (error) { console.error('āŒ Error:', error); } finally { await client.disconnect(); } } debugEvents();