More logging

This commit is contained in:
Glax 2025-05-08 03:36:32 +02:00
parent 1b49b171f4
commit 397d3c93df
5 changed files with 52 additions and 37 deletions

View File

@ -31,7 +31,7 @@ internal abstract class DownloadClient
_lastExecutedRateLimit.TryAdd(requestType, now.Subtract(timeBetweenRequests)); _lastExecutedRateLimit.TryAdd(requestType, now.Subtract(timeBetweenRequests));
TimeSpan rateLimitTimeout = timeBetweenRequests.Subtract(now.Subtract(_lastExecutedRateLimit[requestType])); TimeSpan rateLimitTimeout = timeBetweenRequests.Subtract(now.Subtract(_lastExecutedRateLimit[requestType]));
Log.Debug($"Request limit {rateLimit}/Minute timeBetweenRequests: {timeBetweenRequests} Timeout: {rateLimitTimeout}"); Log.Debug($"Request limit {rateLimit}/Minute timeBetweenRequests: {timeBetweenRequests:ss.fff} Timeout: {rateLimitTimeout:ss.fff}");
if (rateLimitTimeout > TimeSpan.Zero) if (rateLimitTimeout > TimeSpan.Zero)
{ {

View File

@ -73,12 +73,14 @@ public class Kavita : LibraryConnector
Stream data = NetClient.MakeRequest($"{BaseUrl}/api/Library/libraries", "Bearer", Auth); Stream data = NetClient.MakeRequest($"{BaseUrl}/api/Library/libraries", "Bearer", Auth);
if (data == Stream.Null) if (data == Stream.Null)
{ {
return Array.Empty<KavitaLibrary>(); Log.Info("No libraries found");
return [];
} }
JsonArray? result = JsonSerializer.Deserialize<JsonArray>(data); JsonArray? result = JsonSerializer.Deserialize<JsonArray>(data);
if (result is null) if (result is null)
{ {
return Array.Empty<KavitaLibrary>(); Log.Info("No libraries found");
return [];
} }
List<KavitaLibrary> ret = new(); List<KavitaLibrary> ret = new();

View File

@ -38,12 +38,14 @@ public class Komga : LibraryConnector
Stream data = NetClient.MakeRequest($"{BaseUrl}/api/v1/libraries", "Basic", Auth); Stream data = NetClient.MakeRequest($"{BaseUrl}/api/v1/libraries", "Basic", Auth);
if (data == Stream.Null) if (data == Stream.Null)
{ {
return Array.Empty<KomgaLibrary>(); Log.Info("No libraries found");
return [];
} }
JsonArray? result = JsonSerializer.Deserialize<JsonArray>(data); JsonArray? result = JsonSerializer.Deserialize<JsonArray>(data);
if (result is null) if (result is null)
{ {
return Array.Empty<KomgaLibrary>(); Log.Info("No libraries found");
return [];
} }
HashSet<KomgaLibrary> ret = new(); HashSet<KomgaLibrary> ret = new();

View File

@ -1,5 +1,8 @@
using System.ComponentModel.DataAnnotations; using System.ComponentModel.DataAnnotations;
using System.ComponentModel.DataAnnotations.Schema;
using log4net;
using Microsoft.EntityFrameworkCore; using Microsoft.EntityFrameworkCore;
using Newtonsoft.Json;
namespace API.Schema.LibraryConnectors; namespace API.Schema.LibraryConnectors;
@ -20,6 +23,10 @@ public abstract class LibraryConnector(string libraryConnectorId, LibraryType li
[Required] [Required]
public string Auth { get; init; } = auth; public string Auth { get; init; } = auth;
[JsonIgnore]
[NotMapped]
protected ILog Log { get; init; } = LogManager.GetLogger($"{libraryType.ToString()} {baseUrl}");
protected abstract void UpdateLibraryInternal(); protected abstract void UpdateLibraryInternal();
internal abstract bool Test(); internal abstract bool Test();
} }

View File

@ -1,23 +1,26 @@
using System.Net; using System.Net;
using System.Net.Http.Headers; using System.Net.Http.Headers;
using log4net;
namespace API.Schema.LibraryConnectors; namespace API.Schema.LibraryConnectors;
public class NetClient public class NetClient
{ {
private static ILog Log = LogManager.GetLogger(typeof(NetClient));
public static Stream MakeRequest(string url, string authScheme, string auth) public static Stream MakeRequest(string url, string authScheme, string auth)
{ {
Log.Debug($"Requesting {url}");
HttpClient client = new(); HttpClient client = new();
client.DefaultRequestHeaders.Authorization = new AuthenticationHeaderValue(authScheme, auth); client.DefaultRequestHeaders.Authorization = new AuthenticationHeaderValue(authScheme, auth);
HttpRequestMessage requestMessage = new () HttpRequestMessage requestMessage = new()
{ {
Method = HttpMethod.Get, Method = HttpMethod.Get,
RequestUri = new Uri(url) RequestUri = new Uri(url)
}; };
try try
{ {
HttpResponseMessage response = client.Send(requestMessage); HttpResponseMessage response = client.Send(requestMessage);
if (response.StatusCode is HttpStatusCode.Unauthorized && if (response.StatusCode is HttpStatusCode.Unauthorized &&
@ -33,11 +36,12 @@ public class NetClient
switch (e) switch (e)
{ {
case HttpRequestException: case HttpRequestException:
Log.Debug(e);
break; break;
default: default:
throw; throw;
} }
Log.Info("Failed to make request");
return Stream.Null; return Stream.Null;
} }
} }