diff --git a/redash/handlers/query_results.py b/redash/handlers/query_results.py index cb8b8d14f2..020fc7d297 100644 --- a/redash/handlers/query_results.py +++ b/redash/handlers/query_results.py @@ -119,9 +119,7 @@ def run_query( current_user.id, current_user.is_api_user(), metadata={ - "Username": repr(current_user) - if current_user.is_api_user() - else current_user.email, + "Username": current_user.get_actual_user(), "query_id": query_id, }, ) diff --git a/redash/models/users.py b/redash/models/users.py index 9bbb6e5da6..cfcc326224 100644 --- a/redash/models/users.py +++ b/redash/models/users.py @@ -256,6 +256,9 @@ def get_id(self): ).hexdigest() return "{0}-{1}".format(self.id, identity) + def get_actual_user(self): + return repr(self) if self.is_api_user() else self.email + @generic_repr("id", "name", "type", "org_id") class Group(db.Model, BelongsToOrgMixin): diff --git a/redash/tasks/queries/maintenance.py b/redash/tasks/queries/maintenance.py index cd039296e7..2862c3c0e1 100644 --- a/redash/tasks/queries/maintenance.py +++ b/redash/tasks/queries/maintenance.py @@ -98,7 +98,7 @@ def refresh_queries(): query.data_source, query.user_id, scheduled_query=query, - metadata={"query_id": query.id, "Username": "Scheduled"}, + metadata={"query_id": query.id, "Username": query.user.get_actual_user()}, ) enqueued.append(query) except Exception as e: diff --git a/tests/tasks/test_refresh_queries.py b/tests/tasks/test_refresh_queries.py index a1bbebc80f..53007c881c 100644 --- a/tests/tasks/test_refresh_queries.py +++ b/tests/tasks/test_refresh_queries.py @@ -31,14 +31,14 @@ def test_enqueues_outdated_queries_for_sqlquery(self): query1.data_source, query1.user_id, scheduled_query=query1, - metadata={"query_id": query1.id, "Username": "Scheduled"}, + metadata={"query_id": query1.id, "Username": query1.user.get_actual_user()}, ), call( "select 42 LIMIT 1000", query2.data_source, query2.user_id, scheduled_query=query2, - metadata={"query_id": query2.id, "Username": "Scheduled"}, + metadata={"query_id": query2.id, "Username": query2.user.get_actual_user()}, ), ], any_order=True, @@ -71,14 +71,14 @@ def test_enqueues_outdated_queries_for_non_sqlquery(self): query1.data_source, query1.user_id, scheduled_query=query1, - metadata={"query_id": query1.id, "Username": "Scheduled"}, + metadata={"query_id": query1.id, "Username": query1.user.get_actual_user()}, ), call( query2.query_text, query2.data_source, query2.user_id, scheduled_query=query2, - metadata={"query_id": query2.id, "Username": "Scheduled"}, + metadata={"query_id": query2.id, "Username": query2.user.get_actual_user()}, ), ], any_order=True,