Replace debug messages with information logs

This commit is contained in:
DarkFighterLuke
2024-03-11 13:03:38 +01:00
parent 64d6f258fe
commit eb9e6dce81
6 changed files with 112 additions and 29 deletions
@@ -7,6 +7,7 @@ using MediaBrowser.Common.Configuration;
using MediaBrowser.Common.Plugins;
using MediaBrowser.Model.Plugins;
using MediaBrowser.Model.Serialization;
using Microsoft.Extensions.Logging;
namespace Jellyfin.Plugin.TubeArchivistMetadata
{
@@ -20,10 +21,12 @@ namespace Jellyfin.Plugin.TubeArchivistMetadata
/// </summary>
/// <param name="applicationPaths">Instance of the <see cref="IApplicationPaths"/> interface.</param>
/// <param name="xmlSerializer">Instance of the <see cref="IXmlSerializer"/> interface.</param>
public Plugin(IApplicationPaths applicationPaths, IXmlSerializer xmlSerializer)
/// <param name="logger">Instance of the <see cref="ILogger"/> interface.</param>
public Plugin(IApplicationPaths applicationPaths, IXmlSerializer xmlSerializer, ILogger<Plugin> logger)
: base(applicationPaths, xmlSerializer)
{
Instance = this;
Logger = logger;
HttpClientHandler handler = new HttpClientHandler();
handler.AllowAutoRedirect = false;
handler.CheckCertificateRevocationList = true;
@@ -43,7 +46,12 @@ namespace Jellyfin.Plugin.TubeArchivistMetadata
public static Plugin? Instance { get; private set; }
/// <summary>
/// Gets the HTTP client used globally in the plugin.
/// Gets the logger instance used globally by the plugin.
/// </summary>
public ILogger<Plugin> Logger { get; }
/// <summary>
/// Gets the HTTP client used globally by the plugin.
/// </summary>
public HttpClient HttpClient { get; }
@@ -1,6 +1,7 @@
using System;
using System.Collections.Generic;
using System.Data;
using System.Globalization;
using System.Linq;
using System.Net.Http;
using System.Threading;
@@ -11,6 +12,8 @@ using MediaBrowser.Controller.Entities.TV;
using MediaBrowser.Controller.Providers;
using MediaBrowser.Model.Entities;
using MediaBrowser.Model.Providers;
using Microsoft.Extensions.Logging;
using Newtonsoft.Json;
namespace Jellyfin.Plugin.TubeArchivistMetadata.Providers
{
@@ -19,6 +22,23 @@ namespace Jellyfin.Plugin.TubeArchivistMetadata.Providers
/// </summary>
public class EpisodeImageProvider : IRemoteImageProvider
{
private ILogger _logger;
/// <summary>
/// Initializes a new instance of the <see cref="EpisodeImageProvider"/> class.
/// </summary>
public EpisodeImageProvider()
{
if (Plugin.Instance == null)
{
throw new DataException("Uninitialized plugin!");
}
else
{
_logger = Plugin.Instance.Logger;
}
}
/// <summary>
/// Gets the provider name.
/// </summary>
@@ -40,6 +60,8 @@ namespace Jellyfin.Plugin.TubeArchivistMetadata.Providers
var taApi = TubeArchivistApi.GetInstance();
var videoTAId = item.Path.Split("/").Last().Split(".").First();
var video = await taApi.GetVideo(videoTAId).ConfigureAwait(true);
_logger.LogInformation("{Message}", string.Format(CultureInfo.CurrentCulture, "Getting images for video: {0} ({1})", video?.Title, videoTAId));
_logger.LogInformation("{Message}", "Thumb URI: " + video?.VidThumbUrl);
if (video != null)
{
@@ -49,7 +71,6 @@ namespace Jellyfin.Plugin.TubeArchivistMetadata.Providers
Type = ImageType.Primary,
Url = video.VidThumbUrl
});
Console.WriteLine("ThumbURL: " + video.VidThumbUrl);
}
return list;
@@ -1,6 +1,7 @@
using System;
using System.Collections.Generic;
using System.Data;
using System.Globalization;
using System.Linq;
using System.Net.Http;
using System.Threading;
@@ -11,6 +12,7 @@ using MediaBrowser.Controller.Entities.TV;
using MediaBrowser.Controller.Providers;
using MediaBrowser.Model.Entities;
using MediaBrowser.Model.Providers;
using Microsoft.Extensions.Logging;
using Newtonsoft.Json;
namespace Jellyfin.Plugin.TubeArchivistMetadata.Providers
@@ -20,6 +22,23 @@ namespace Jellyfin.Plugin.TubeArchivistMetadata.Providers
/// </summary>
public class EpisodeMetadataProvider : IRemoteMetadataProvider<Episode, EpisodeInfo>
{
private ILogger _logger;
/// <summary>
/// Initializes a new instance of the <see cref="EpisodeMetadataProvider"/> class.
/// </summary>
public EpisodeMetadataProvider()
{
if (Plugin.Instance == null)
{
throw new DataException("Uninitialized plugin!");
}
else
{
_logger = Plugin.Instance.Logger;
}
}
/// <summary>
/// Gets the provider name.
/// </summary>
@@ -32,9 +51,8 @@ namespace Jellyfin.Plugin.TubeArchivistMetadata.Providers
var taApi = TubeArchivistApi.GetInstance();
var videoTAId = info.Path.Split("/").Last().Split(".").First();
var video = await taApi.GetVideo(videoTAId).ConfigureAwait(true);
Console.WriteLine("Metadata video received: ");
Console.WriteLine(JsonConvert.SerializeObject(video));
Console.WriteLine("Media YT id: " + videoTAId);
_logger.LogInformation("{Message}", string.Format(CultureInfo.CurrentCulture, "Getting metadata for video: {0} ({1})", video?.Title, videoTAId));
_logger.LogInformation("{Message}", "Received metadata: \n" + JsonConvert.SerializeObject(video));
if (video != null)
{
@@ -51,7 +69,6 @@ namespace Jellyfin.Plugin.TubeArchivistMetadata.Providers
result.People = peopleInfo;
}
Console.WriteLine(result.Item.ProductionYear);
return result;
}
@@ -1,6 +1,7 @@
using System;
using System.Collections.Generic;
using System.Data;
using System.Globalization;
using System.Linq;
using System.Net.Http;
using System.Threading;
@@ -11,6 +12,7 @@ using MediaBrowser.Controller.Entities.TV;
using MediaBrowser.Controller.Providers;
using MediaBrowser.Model.Entities;
using MediaBrowser.Model.Providers;
using Microsoft.Extensions.Logging;
namespace Jellyfin.Plugin.TubeArchivistMetadata.Providers
{
@@ -19,6 +21,23 @@ namespace Jellyfin.Plugin.TubeArchivistMetadata.Providers
/// </summary>
public class SeriesImageProvider : IRemoteImageProvider
{
private ILogger _logger;
/// <summary>
/// Initializes a new instance of the <see cref="SeriesImageProvider"/> class.
/// </summary>
public SeriesImageProvider()
{
if (Plugin.Instance == null)
{
throw new DataException("Uninitialized plugin!");
}
else
{
_logger = Plugin.Instance.Logger;
}
}
/// <summary>
/// Gets the provider name.
/// </summary>
@@ -40,6 +59,10 @@ namespace Jellyfin.Plugin.TubeArchivistMetadata.Providers
var taApi = TubeArchivistApi.GetInstance();
var channelTAId = item.Path.Split("/").Last();
var channel = await taApi.GetChannel(channelTAId).ConfigureAwait(true);
_logger.LogInformation("{Message}", string.Format(CultureInfo.CurrentCulture, "Getting images for channel: {0} ({1})", channel?.Name, channelTAId));
_logger.LogInformation("{Message}", "Thumb URI: " + channel?.ThumbUrl);
_logger.LogInformation("{Message}", "TVArt URI: " + channel?.TvartUrl);
_logger.LogInformation("{Message}", "Banner URI: " + channel?.BannerUrl);
if (channel != null)
{
@@ -75,7 +98,6 @@ namespace Jellyfin.Plugin.TubeArchivistMetadata.Providers
}
else
{
Console.WriteLine("Channel images: " + Plugin.Instance.Configuration.TubeArchivistUrl + url);
return await Plugin.Instance.HttpClient.GetAsync(new Uri(Plugin.Instance.Configuration.TubeArchivistUrl + url), cancellationToken).ConfigureAwait(false);
}
}
@@ -1,6 +1,7 @@
using System;
using System.Collections.Generic;
using System.Data;
using System.Globalization;
using System.Linq;
using System.Net.Http;
using System.Threading;
@@ -11,6 +12,7 @@ using MediaBrowser.Controller.Entities.TV;
using MediaBrowser.Controller.Providers;
using MediaBrowser.Model.Entities;
using MediaBrowser.Model.Providers;
using Microsoft.Extensions.Logging;
using Newtonsoft.Json;
namespace Jellyfin.Plugin.TubeArchivistMetadata.Providers
@@ -20,6 +22,23 @@ namespace Jellyfin.Plugin.TubeArchivistMetadata.Providers
/// </summary>
public class SeriesMetadataProvider : IRemoteMetadataProvider<Series, SeriesInfo>
{
private ILogger _logger;
/// <summary>
/// Initializes a new instance of the <see cref="SeriesMetadataProvider"/> class.
/// </summary>
public SeriesMetadataProvider()
{
if (Plugin.Instance == null)
{
throw new DataException("Uninitialized plugin!");
}
else
{
_logger = Plugin.Instance.Logger;
}
}
/// <summary>
/// Gets the provider name.
/// </summary>
@@ -32,6 +51,8 @@ namespace Jellyfin.Plugin.TubeArchivistMetadata.Providers
var taApi = TubeArchivistApi.GetInstance();
var channelTAId = info.Path.Split("/").Last();
var channel = await taApi.GetChannel(channelTAId).ConfigureAwait(true);
_logger.LogInformation("{Message}", string.Format(CultureInfo.CurrentCulture, "Getting metadata for channel: {0} ({1})", channel?.Name, channelTAId));
_logger.LogInformation("{Message}", "Received metadata: \n" + JsonConvert.SerializeObject(channel));
if (channel != null)
{
@@ -4,6 +4,7 @@ using System.Net;
using System.Net.Http;
using System.Net.Http.Headers;
using System.Threading.Tasks;
using Microsoft.Extensions.Logging;
using Newtonsoft.Json;
namespace Jellyfin.Plugin.TubeArchivistMetadata.TubeArchivist
@@ -13,6 +14,7 @@ namespace Jellyfin.Plugin.TubeArchivistMetadata.TubeArchivist
/// </summary>
public class TubeArchivistApi
{
private ILogger _logger;
private HttpClient client;
private static TubeArchivistApi _taApiInstance = null!;
@@ -22,6 +24,15 @@ namespace Jellyfin.Plugin.TubeArchivistMetadata.TubeArchivist
/// <param name="httpClient">HTTP client to make requests to TubeArchivist API.</param>
private TubeArchivistApi(HttpClient httpClient)
{
if (Plugin.Instance == null)
{
throw new DataException("Uninitialized plugin!");
}
else
{
_logger = Plugin.Instance.Logger;
}
client = httpClient;
}
@@ -54,34 +65,22 @@ namespace Jellyfin.Plugin.TubeArchivistMetadata.TubeArchivist
public async Task<Channel?> GetChannel(string channelId)
{
ResponseContainer<Channel>? channel = null;
Console.WriteLine(Plugin.Instance?.Configuration.TubeArchivistUrl);
Console.WriteLine(Plugin.Instance?.Configuration.TubeArchivistApiKey);
client.DefaultRequestHeaders.Authorization = new AuthenticationHeaderValue("Token", Plugin.Instance?.Configuration.TubeArchivistApiKey);
var channelsEndpoint = "/api/channel/";
var url = new Uri(Plugin.Instance?.Configuration.TubeArchivistUrl + channelsEndpoint + channelId);
var response = await client.GetAsync(url).ConfigureAwait(true);
Console.WriteLine(response.StatusCode);
while (response.StatusCode == HttpStatusCode.Moved)
{
Console.WriteLine("Received redirect to: " + response.Headers.Location);
_logger.LogInformation("{Message}", "Received redirect to: " + response.Headers.Location);
response = await client.GetAsync(response.Headers.Location).ConfigureAwait(true);
}
Console.WriteLine(url + ": " + response.StatusCode);
_logger.LogInformation("{Message}", url + ": " + response.StatusCode);
if (response.IsSuccessStatusCode)
{
string rawData = await response.Content.ReadAsStringAsync().ConfigureAwait(true);
channel = JsonConvert.DeserializeObject<ResponseContainer<Channel>>(rawData);
Console.WriteLine("Channel null? " + channel == null);
Console.WriteLine("Channel: " + channel?.Data?.Name);
if (channel != null && channel.Data != null)
{
Console.WriteLine(JsonConvert.SerializeObject(channel));
}
}
return channel?.Data;
@@ -95,22 +94,17 @@ namespace Jellyfin.Plugin.TubeArchivistMetadata.TubeArchivist
public async Task<Video?> GetVideo(string videoId)
{
ResponseContainer<Video>? video = null;
Console.WriteLine(Plugin.Instance?.Configuration.TubeArchivistUrl);
Console.WriteLine(Plugin.Instance?.Configuration.TubeArchivistApiKey);
client.DefaultRequestHeaders.Authorization = new AuthenticationHeaderValue("Token", Plugin.Instance?.Configuration.TubeArchivistApiKey);
var videosEndpoint = "/api/video/";
var url = new Uri(Plugin.Instance?.Configuration.TubeArchivistUrl + videosEndpoint + videoId);
var response = await client.GetAsync(url).ConfigureAwait(true);
Console.WriteLine(response.StatusCode);
while (response.StatusCode == HttpStatusCode.Moved)
{
Console.WriteLine("Received redirect to: " + response.Headers.Location);
_logger.LogInformation("{Message}", "Received redirect to: " + response.Headers.Location);
response = await client.GetAsync(response.Headers.Location).ConfigureAwait(true);
}
Console.WriteLine(url + ": " + response.StatusCode);
_logger.LogInformation("{Message}", url + ": " + response.StatusCode);
if (response.IsSuccessStatusCode)
{