diff --git a/dashboard/__pycache__/server.cpython-313.pyc b/dashboard/__pycache__/server.cpython-313.pyc new file mode 100644 index 0000000..b0984a8 Binary files /dev/null and b/dashboard/__pycache__/server.cpython-313.pyc differ diff --git a/src/analytics/__pycache__/worker.cpython-313.pyc b/src/analytics/__pycache__/worker.cpython-313.pyc new file mode 100644 index 0000000..9fc3e69 Binary files /dev/null and b/src/analytics/__pycache__/worker.cpython-313.pyc differ diff --git a/src/analytics/worker.py b/src/analytics/worker.py index ef5065e..d1688f5 100644 --- a/src/analytics/worker.py +++ b/src/analytics/worker.py @@ -665,8 +665,7 @@ class AnalyticsWorker: logger.info(f"Processing yesterday's data: {yesterday}") self.process_date(yesterday) - # Heute wird nur verarbeitet, wenn es bereits Trades gibt (normalerweise am Ende des Tages) - # Aber wir prüfen trotzdem, ob es Daten gibt + # Heute wird verarbeitet, wenn es bereits Trades gibt if today not in existing_dates: # Prüfe ob es heute schon Trades gibt query = f"select count(*) from trades where date_trunc('day', timestamp) = '{today}'" @@ -674,6 +673,8 @@ class AnalyticsWorker: if data and data.get('dataset') and data['dataset'][0][0] and data['dataset'][0][0] > 0: logger.info(f"Found trades for today ({today}), processing...") self.process_date(today) + else: + logger.info(f"No trades found for today ({today}) yet, will process later") # Hauptschleife: Prüfe regelmäßig auf fehlende Tage logger.info("Starting main loop - checking for missing dates every hour...") @@ -688,12 +689,22 @@ class AnalyticsWorker: self.process_missing_dates() last_check_hour = current_hour - # Stelle sicher, dass gestern verarbeitet wurde - yesterday = (now - datetime.timedelta(days=1)).date() + # Stelle sicher, dass gestern und heute verarbeitet wurden + today = now.date() + yesterday = today - datetime.timedelta(days=1) existing_dates = self.get_existing_dates('analytics_custom') + if yesterday not in existing_dates: logger.info(f"Processing yesterday's data: {yesterday}") self.process_date(yesterday) + + # Prüfe heute, ob es Trades gibt + if today not in existing_dates: + query = f"select count(*) from trades where date_trunc('day', timestamp) = '{today}'" + data = self.query_questdb(query) + if data and data.get('dataset') and data['dataset'][0][0] and data['dataset'][0][0] > 0: + logger.info(f"Found trades for today ({today}), processing...") + self.process_date(today) # Prüfe ob es Mitternacht ist (00:00) - verarbeite dann gestern if now.hour == 0 and now.minute == 0: