From b8d2c8094b2f0cac599926b9601c5a9bf34642ed Mon Sep 17 00:00:00 2001 From: Richard Date: Mon, 6 Jul 2026 19:47:15 +0200 Subject: [PATCH] Feinschliff: restliche Copytrading-Services ins Modul + EF-Logging gedrosselt - MasterTraderAnalyticsJob + PersistenceService von services/ nach src/PolyTrader.Modules.CopyTrading/Services/ verschoben und in CopyTradingModule.RegisterServices registriert (reiner Move). Beide sind copytrading-spezifisch (Master-Trader-Historie bzw. Persistenz der geschlossenen Copytrades ueber den Modul-Channel; Dual-Write in Core-Log bleibt). - Program.cs: die zwei Hosted-Service-Registrierungen entfernt. - appsettings.json: Logging-Sektion ergaenzt -> EF-Core-Command-Logging auf Warning (kein SQL-Spam mehr; --smoke-ui zeigt 0 "Executed DbCommand"-Zeilen). Damit liegt die gesamte Copytrading-Logik im Modul; App/Core enthalten nur noch generische Infrastruktur + Startup-Hydration + CLI-Tools. Build gruen, 48 Tests gruen, --smoke-ui gruen. Co-Authored-By: Claude Opus 4.8 --- Program.cs | 2 -- appsettings.json | 7 +++++++ src/PolyTrader.Modules.CopyTrading/CopyTradingModule.cs | 4 ++++ .../Services}/MasterTraderAnalyticsJob.cs | 0 .../Services}/PersistenceService.cs | 0 5 files changed, 11 insertions(+), 2 deletions(-) rename {services => src/PolyTrader.Modules.CopyTrading/Services}/MasterTraderAnalyticsJob.cs (100%) rename {services => src/PolyTrader.Modules.CopyTrading/Services}/PersistenceService.cs (100%) diff --git a/Program.cs b/Program.cs index e25efc0..a7f6375 100644 --- a/Program.cs +++ b/Program.cs @@ -122,9 +122,7 @@ internal static class Program module.RegisterServices(services, context.Configuration); } - services.AddHostedService(); services.AddHostedService(); - services.AddHostedService(); services.AddHostedService((IServiceProvider sp) => sp.GetRequiredService()); services.AddHostedService((IServiceProvider sp) => sp.GetRequiredService()); services.AddSingleton(); diff --git a/appsettings.json b/appsettings.json index f292c1e..5e64f5a 100644 --- a/appsettings.json +++ b/appsettings.json @@ -2,5 +2,12 @@ "Database": { "_comment": "MySqlConnectionString liegt in der gitignorierten appsettings.Local.json.", "MySqlConnectionString": "" + }, + "Logging": { + "LogLevel": { + "Default": "Information", + "Microsoft.EntityFrameworkCore": "Warning", + "Microsoft.EntityFrameworkCore.Database.Command": "Warning" + } } } diff --git a/src/PolyTrader.Modules.CopyTrading/CopyTradingModule.cs b/src/PolyTrader.Modules.CopyTrading/CopyTradingModule.cs index e781ae5..787433a 100644 --- a/src/PolyTrader.Modules.CopyTrading/CopyTradingModule.cs +++ b/src/PolyTrader.Modules.CopyTrading/CopyTradingModule.cs @@ -56,6 +56,10 @@ namespace PolyTrader.Modules.CopyTrading services.AddHostedService(sp => sp.GetRequiredService()); services.AddHostedService(); services.AddHostedService(); + services.AddHostedService(); + + // Persistiert die geschlossenen Copytrades (Modul-Channel -> Modul-Log + Core-Log). + services.AddHostedService(); // WSS-Listener des Moduls: Blockchain (Alchemy → Master-Trader-Wallets) und // Polymarket-Markt-WSS (Auto-Redeem nach Copytrading-Settings). diff --git a/services/MasterTraderAnalyticsJob.cs b/src/PolyTrader.Modules.CopyTrading/Services/MasterTraderAnalyticsJob.cs similarity index 100% rename from services/MasterTraderAnalyticsJob.cs rename to src/PolyTrader.Modules.CopyTrading/Services/MasterTraderAnalyticsJob.cs diff --git a/services/PersistenceService.cs b/src/PolyTrader.Modules.CopyTrading/Services/PersistenceService.cs similarity index 100% rename from services/PersistenceService.cs rename to src/PolyTrader.Modules.CopyTrading/Services/PersistenceService.cs