From 1a50a280d42153663c7713822f84b9d355c84a3d Mon Sep 17 00:00:00 2001 From: mnoszczak Date: Tue, 27 Jun 2023 19:46:00 +0200 Subject: [PATCH] Improve exports error handling --- labelbox/client.py | 5 +++-- labelbox/schema/data_row.py | 7 +++---- labelbox/schema/dataset.py | 7 +++---- labelbox/schema/model_run.py | 7 +++---- labelbox/schema/project.py | 7 +++---- labelbox/schema/slice.py | 7 +++---- 6 files changed, 18 insertions(+), 22 deletions(-) diff --git a/labelbox/client.py b/labelbox/client.py index 6fec5fc70..8b19d5431 100644 --- a/labelbox/client.py +++ b/labelbox/client.py @@ -109,7 +109,8 @@ def execute(self, data=None, files=None, timeout=60.0, - experimental=False): + experimental=False, + error_log_key="message"): """ Sends a request to the server for the execution of the given query. @@ -267,7 +268,7 @@ def get_error_status_code(error): "extensions", "code") if malformed_request_error is not None: raise labelbox.exceptions.MalformedQueryException( - malformed_request_error["message"]) + malformed_request_error[error_log_key]) # A lot of different error situations are now labeled serverside # as INTERNAL_SERVER_ERROR, when they are actually client errors. diff --git a/labelbox/schema/data_row.py b/labelbox/schema/data_row.py index d82727e0a..d8111bb9f 100644 --- a/labelbox/schema/data_row.py +++ b/labelbox/schema/data_row.py @@ -246,10 +246,9 @@ def export_v2(client: 'Client', } } - res = client.execute( - create_task_query_str, - query_params, - ) + res = client.execute(create_task_query_str, + query_params, + error_log_key="errors") print(res) res = res[mutation_name] task_id = res["taskId"] diff --git a/labelbox/schema/dataset.py b/labelbox/schema/dataset.py index eee559b9c..2377e1c35 100644 --- a/labelbox/schema/dataset.py +++ b/labelbox/schema/dataset.py @@ -632,10 +632,9 @@ def export_v2(self, }) query_params["input"]["filters"]["searchQuery"]["query"] = search_query - res = self.client.execute( - create_task_query_str, - query_params, - ) + res = self.client.execute(create_task_query_str, + query_params, + error_log_key="errors") res = res[mutation_name] task_id = res["taskId"] user: User = self.client.get_user() diff --git a/labelbox/schema/model_run.py b/labelbox/schema/model_run.py index b49f5bb43..530077110 100644 --- a/labelbox/schema/model_run.py +++ b/labelbox/schema/model_run.py @@ -536,10 +536,9 @@ def export_v2(self, }, } } - res = self.client.execute( - create_task_query_str, - queryParams, - ) + res = self.client.execute(create_task_query_str, + queryParams, + error_log_key="errors") res = res[mutation_name] task_id = res["taskId"] user: User = self.client.get_user() diff --git a/labelbox/schema/project.py b/labelbox/schema/project.py index 84a141aeb..be1a12fd8 100644 --- a/labelbox/schema/project.py +++ b/labelbox/schema/project.py @@ -486,10 +486,9 @@ def export_v2(self, search_query = build_filters(self.client, _filters) query_params["input"]["filters"]["searchQuery"]["query"] = search_query - res = self.client.execute( - create_task_query_str, - query_params, - ) + res = self.client.execute(create_task_query_str, + query_params, + error_log_key="errors") res = res[mutation_name] task_id = res["taskId"] user: User = self.client.get_user() diff --git a/labelbox/schema/slice.py b/labelbox/schema/slice.py index d9fc6bcba..3364a878c 100644 --- a/labelbox/schema/slice.py +++ b/labelbox/schema/slice.py @@ -129,10 +129,9 @@ def export_v2(self, } } - res = self.client.execute( - create_task_query_str, - query_params, - ) + res = self.client.execute(create_task_query_str, + query_params, + error_log_key="errors") res = res[mutation_name] task_id = res["taskId"] user: User = self.client.get_user()