diff --git a/api/chalicelib/core/health.py b/api/chalicelib/core/health.py index e8bf8f909..ffec878ce 100644 --- a/api/chalicelib/core/health.py +++ b/api/chalicelib/core/health.py @@ -280,7 +280,7 @@ def cron(): # this cron is used to correct the sessions&events count every week def weekly_cron(): with pg_client.PostgresClient(long_query=True) as cur: - query = cur.mogrify("""SELECT project_id + query = cur.mogrify("""SELECT project_id, projects_stats.last_update_at FROM public.projects LEFT JOIN public.projects_stats USING (project_id) @@ -298,7 +298,7 @@ def weekly_cron(): "events_count": 0} query = cur.mogrify("""SELECT COUNT(1) AS sessions_count, - SUM(events_count) AS events_count + COALESCE(SUM(events_count),0) AS events_count FROM public.sessions WHERE project_id=%(project_id)s AND start_ts<=%(end_ts)s diff --git a/ee/api/app_crons.py b/ee/api/app_crons.py index 6b7621f59..081d4d4d6 100644 --- a/ee/api/app_crons.py +++ b/ee/api/app_crons.py @@ -17,7 +17,7 @@ def default_action(action): async def _func(): print(f"{action} not found in crons-definitions") print("possible actions:") - print(ACTIONS.keys()) + print(list(ACTIONS.keys())) return _func @@ -29,7 +29,7 @@ async def process(action): if __name__ == '__main__': if len(sys.argv) < 2 or len(sys.argv[1]) < 1: print("please provide actions as argument\npossible actions:") - print(ACTIONS.keys()) + print(list(ACTIONS.keys())) else: print(f"action: {sys.argv[1]}") asyncio.run(process(sys.argv[1])) diff --git a/ee/api/chalicelib/core/health.py b/ee/api/chalicelib/core/health.py index e77f7f5a9..083bfcd43 100644 --- a/ee/api/chalicelib/core/health.py +++ b/ee/api/chalicelib/core/health.py @@ -289,7 +289,7 @@ def cron(): # this cron is used to correct the sessions&events count every week def weekly_cron(): with pg_client.PostgresClient(long_query=True) as cur: - query = cur.mogrify("""SELECT project_id + query = cur.mogrify("""SELECT project_id, projects_stats.last_update_at FROM public.projects LEFT JOIN public.projects_stats USING (project_id) @@ -307,7 +307,7 @@ def weekly_cron(): "events_count": 0} query = cur.mogrify("""SELECT COUNT(1) AS sessions_count, - SUM(events_count) AS events_count + COALESCE(SUM(events_count),0) AS events_count FROM public.sessions WHERE project_id=%(project_id)s AND start_ts<=%(end_ts)s diff --git a/ee/api/run-crons-dev.sh b/ee/api/run-crons-dev.sh new file mode 100755 index 000000000..eb9b71b1a --- /dev/null +++ b/ee/api/run-crons-dev.sh @@ -0,0 +1,6 @@ +#!/bin/zsh +APP_NAME=crons \ +PG_MINCONN=2 \ +PG_MAXCONN=10 \ +PG_POOL=false \ +python app_crons.py $@ \ No newline at end of file