feat(news): dynamic settings, IFinlyticLogger, live log streaming, and EF migration

This commit is contained in:
2026-08-15 21:30:01 +02:00
parent a1f2b888f6
commit a94c36a878
12 changed files with 800 additions and 555 deletions
+24
View File
@@ -0,0 +1,24 @@
using FinlyticCore.Models.Settings;
namespace FinlyticNews.Util;
public static class SettingKeys
{
// --- Logging-Kanäle ---
public static readonly SettingKey<bool> NewsChannel = new("Logging.Channel.News", true);
public static readonly SettingKey<bool> MqttChannel = new("Logging.Channel.MQTT", true);
public static readonly SettingKey<bool> HealthPingChannel = new("Logging.Channel.Health", true);
// --- Scraping & Feed-Konfiguration ---
public static readonly SettingKey<int> ScrapeIntervalMinutes = new("Scraping.IntervalMinutes", 15);
public static readonly SettingKey<int> MaxArticlesPerFeed = new("Scraping.MaxArticlesPerFeed", 20);
public static readonly SettingKey<bool> EnableAutoScraping = new("Feature.EnableAutoScraping", true);
public static readonly SettingKey<int> HttpTimeoutSeconds = new("Scraping.HttpTimeoutSeconds", 20);
// --- KI & Sentiment-Konfiguration ---
public static readonly SettingKey<int> FinBertBatchSize = new("AI.FinBertBatchSize", 8);
public static readonly SettingKey<double> MinSentimentConfidence = new("AI.MinSentimentConfidence", 0.65);
// --- Daten-Retention & Cleanup ---
public static readonly SettingKey<int> ArticleRetentionDays = new("Data.ArticleRetentionDays", 90);
}