From 54f740af4c394441cd11e72dcf3906a75c1f66b3 Mon Sep 17 00:00:00 2001 From: Rene Evertz Date: Mon, 1 Jun 2026 13:24:54 +0200 Subject: [PATCH] Logging zentral erweitert --- .../AICore/Facade/AiPromptsApiClient.cs | 2 ++ .../ServerUtils/ApiFacade/HttpClientFacade.cs | 18 +++++++++++++++--- .../Components/ServerUtils/ServerUtils.csproj | 4 ++++ 3 files changed, 21 insertions(+), 3 deletions(-) diff --git a/Server/Components/AICore/Facade/AiPromptsApiClient.cs b/Server/Components/AICore/Facade/AiPromptsApiClient.cs index 06944f361..22cd3c402 100644 --- a/Server/Components/AICore/Facade/AiPromptsApiClient.cs +++ b/Server/Components/AICore/Facade/AiPromptsApiClient.cs @@ -59,6 +59,8 @@ namespace AICore.Facade if (!response.Success) { + _logger.Error($"GetAiPrompts: " + response.ToErrorString()); + return null; } diff --git a/Server/Components/ServerUtils/ApiFacade/HttpClientFacade.cs b/Server/Components/ServerUtils/ApiFacade/HttpClientFacade.cs index 0f0892ad8..2e1c16103 100644 --- a/Server/Components/ServerUtils/ApiFacade/HttpClientFacade.cs +++ b/Server/Components/ServerUtils/ApiFacade/HttpClientFacade.cs @@ -2,6 +2,7 @@ using BS.Shared.DataContracts; using BS.Shared.Exceptions; using BS.Shared.Interface; +using log4net; using System; using System.Collections.Generic; using System.Diagnostics.Eventing.Reader; @@ -21,6 +22,8 @@ namespace BeWo.ServerUtils.ApiFacade { public class HttpClientFacade { + private ILog _logger; + public HttpClientFacade(string base_url, string api_key, bool directConntect = true) { if (string.IsNullOrEmpty(base_url)) @@ -33,6 +36,8 @@ namespace BeWo.ServerUtils.ApiFacade if (!string.IsNullOrWhiteSpace(api_key)) SetToken(api_key); DirectConnect = directConntect; + + _logger = LoggerUtils.GetLogger(System.Reflection.MethodBase.GetCurrentMethod().DeclaringType); } public bool DirectConnect { get; private set; } @@ -57,13 +62,16 @@ namespace BeWo.ServerUtils.ApiFacade { var http_response = await getResponseAsync(method).ConfigureAwait(false); + var json = await http_response.Content.ReadAsStringAsync().ConfigureAwait(false); + if (!http_response.IsSuccessStatusCode) { + _logger.Error($"{http_response.ReasonPhrase} (Code:{http_response.StatusCode})"); + _logger.Error(json); + return ApiResponse.FailureResponse(AppError.ApiResponseFailed, http_response.ReasonPhrase, (int)http_response.StatusCode); } - var json = await http_response.Content.ReadAsStringAsync().ConfigureAwait(false); - return parse(() => JsonSerializer.Deserialize(json, JsonSerializerOptions.Default), json, extractor); } @@ -80,12 +88,16 @@ namespace BeWo.ServerUtils.ApiFacade { var http_response = await getResponseAsync(method).ConfigureAwait(false); + var content = await http_response.Content.ReadAsStringAsync().ConfigureAwait(false); + if (!http_response.IsSuccessStatusCode) { + _logger.Error($"{http_response.ReasonPhrase} (Code:{http_response.StatusCode})"); + _logger.Error(content); + return ApiResponse.FailureResponse(AppError.ApiResponseFailed, http_response.ReasonPhrase, (int)http_response.StatusCode); } - var content = await http_response.Content.ReadAsStringAsync().ConfigureAwait(false); object result; var type = typeof(T); diff --git a/Server/Components/ServerUtils/ServerUtils.csproj b/Server/Components/ServerUtils/ServerUtils.csproj index b00a99e33..6048f375d 100644 --- a/Server/Components/ServerUtils/ServerUtils.csproj +++ b/Server/Components/ServerUtils/ServerUtils.csproj @@ -40,6 +40,10 @@ prompt + + False + ..\..\..\Lib\log4net.dll + ..\..\..\packages\Microsoft.Bcl.AsyncInterfaces.9.0.7\lib\net462\Microsoft.Bcl.AsyncInterfaces.dll