Update logging levels and add error handling for empty data in PR tools and providers

This commit is contained in:
mrT23
2024-08-14 08:02:34 +03:00
parent 8adfca5b3c
commit 8414e109c5
5 changed files with 7 additions and 5 deletions

View File

@ -177,7 +177,7 @@ class AzureDevopsProvider(GitProvider):
pull_request_id=self.pr_num, pull_request_id=self.pr_num,
) )
except Exception as e: except Exception as e:
get_logger().exception(f"Failed to publish labels, error: {e}") get_logger().warning(f"Failed to publish labels, error: {e}")
def get_pr_labels(self, update=False): def get_pr_labels(self, update=False):
try: try:

View File

@ -736,7 +736,7 @@ class GithubProvider(GitProvider):
"PUT", f"{self.pr.issue_url}/labels", input=post_parameters "PUT", f"{self.pr.issue_url}/labels", input=post_parameters
) )
except Exception as e: except Exception as e:
get_logger().exception(f"Failed to publish labels, error: {e}") get_logger().warning(f"Failed to publish labels, error: {e}")
def get_pr_labels(self, update=False): def get_pr_labels(self, update=False):
try: try:

View File

@ -508,7 +508,7 @@ class GitLabProvider(GitProvider):
self.mr.labels = list(set(pr_types)) self.mr.labels = list(set(pr_types))
self.mr.save() self.mr.save()
except Exception as e: except Exception as e:
get_logger().exception(f"Failed to publish labels, error: {e}") get_logger().warning(f"Failed to publish labels, error: {e}")
def publish_inline_comments(self, comments: list[dict]): def publish_inline_comments(self, comments: list[dict]):
pass pass

View File

@ -292,7 +292,7 @@ class PRCodeSuggestions:
get_logger().debug(f"PR diff", artifact=self.patches_diff) get_logger().debug(f"PR diff", artifact=self.patches_diff)
self.prediction = await self._get_prediction(model, self.patches_diff) self.prediction = await self._get_prediction(model, self.patches_diff)
else: else:
get_logger().error(f"Error getting PR diff") get_logger().warning(f"Empty PR diff")
self.prediction = None self.prediction = None
data = self.prediction data = self.prediction

View File

@ -92,7 +92,7 @@ class PRDescription:
if self.prediction: if self.prediction:
self._prepare_data() self._prepare_data()
else: else:
get_logger().error(f"Error getting AI prediction {self.pr_id}") get_logger().warning(f"Empty prediction, PR: {self.pr_id}")
self.git_provider.remove_initial_comment() self.git_provider.remove_initial_comment()
return None return None
@ -508,6 +508,8 @@ extra_file_yaml =
def _prepare_file_labels(self): def _prepare_file_labels(self):
file_label_dict = {} file_label_dict = {}
if not self.data or 'pr_files' not in self.data:
return file_label_dict
for file in self.data['pr_files']: for file in self.data['pr_files']:
try: try:
required_fields = ['changes_summary', 'changes_title', 'filename', 'label'] required_fields = ['changes_summary', 'changes_title', 'filename', 'label']