From 0fa03507c989d8b3a5b900c8ccb40377db9f2080 Mon Sep 17 00:00:00 2001 From: sol-wizard Date: Tue, 5 May 2026 22:12:12 +1000 Subject: [PATCH] update error --- .../Modules/BreakDown/Commands/BreakdownTask.cs | 11 +++++------ .../Services/AiTaskGenerateService.cs | 14 ++++++-------- 2 files changed, 11 insertions(+), 14 deletions(-) diff --git a/blotztask-api/Modules/BreakDown/Commands/BreakdownTask.cs b/blotztask-api/Modules/BreakDown/Commands/BreakdownTask.cs index b64d9670e..91361495d 100644 --- a/blotztask-api/Modules/BreakDown/Commands/BreakdownTask.cs +++ b/blotztask-api/Modules/BreakDown/Commands/BreakdownTask.cs @@ -1,5 +1,6 @@ using System.ComponentModel; using System.ComponentModel.DataAnnotations; +using System.ClientModel; using Azure.AI.Projects; using BlotzTask.Modules.AiUsage.Services; using BlotzTask.Modules.BreakDown.DTOs; @@ -112,15 +113,13 @@ await recordAiUsageService.RecordAiUsageAsync(new RecordAiUsageRequest logger.LogWarning(oce, "Task breakdown was canceled"); throw new AiTaskGenerationException(AiErrorCode.Canceled, "The request was canceled.", oce); } - catch (Exception ex) when ( - ex.Message.Contains("429", StringComparison.OrdinalIgnoreCase) || - ex.Message.Contains("quota", StringComparison.OrdinalIgnoreCase) || - ex.Message.Contains("token", StringComparison.OrdinalIgnoreCase)) + catch (ClientResultException ex) when (ex.Status == 429) { - logger.LogWarning(ex, "Token limit exceeded during task breakdown."); + logger.LogError(ex, "Azure AI rate limit hit during task breakdown."); throw new AzureAiException(); } - catch (Exception ex) when ( + catch (ClientResultException ex) when ( + ex.Status == 400 && ex.Message.Contains("content_filter", StringComparison.OrdinalIgnoreCase)) { logger.LogWarning(ex, "Request blocked by content filter during task breakdown."); diff --git a/blotztask-api/Modules/ChatTaskGenerator/Services/AiTaskGenerateService.cs b/blotztask-api/Modules/ChatTaskGenerator/Services/AiTaskGenerateService.cs index 8477dcd73..813477cbc 100644 --- a/blotztask-api/Modules/ChatTaskGenerator/Services/AiTaskGenerateService.cs +++ b/blotztask-api/Modules/ChatTaskGenerator/Services/AiTaskGenerateService.cs @@ -1,6 +1,6 @@ using System.Diagnostics; +using System.ClientModel; using Azure.AI.Projects; -using BlotzTask.Modules.AiUsage.Exceptions; using BlotzTask.Modules.AiUsage.Services; using BlotzTask.Modules.ChatTaskGenerator.Constants; using BlotzTask.Modules.ChatTaskGenerator.Dtos; @@ -126,15 +126,13 @@ await recordAiUsageService.RecordAiUsageAsync(new RecordAiUsageRequest logger.LogInformation(oce, "AI task generation cancelled."); throw new AiTaskGenerationException(AiErrorCode.Canceled, "The request was canceled.", oce); } - catch (Exception ex) when ( - ex.Message.Contains("429", StringComparison.OrdinalIgnoreCase) || - ex.Message.Contains("quota", StringComparison.OrdinalIgnoreCase) || - ex.Message.Contains("token", StringComparison.OrdinalIgnoreCase)) + catch (ClientResultException ex) when (ex.Status == 429) { - logger.LogWarning(ex, "Token limit exceeded during AI task generation."); + logger.LogError(ex, "Azure AI rate limit hit during AI task generation."); throw new AzureAiException(); } - catch (Exception ex) when ( + catch (ClientResultException ex) when ( + ex.Status == 400 && ex.Message.Contains("content_filter", StringComparison.OrdinalIgnoreCase)) { logger.LogWarning(ex, "Request blocked by content filter."); @@ -147,4 +145,4 @@ await recordAiUsageService.RecordAiUsageAsync(new RecordAiUsageRequest "An unhandled exception occurred during AI task generation.", ex); } } -} \ No newline at end of file +}