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("\nEvent 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();