diff --git a/src/Squidex.Infrastructure/Log/Internal/ConsoleLogProcessor.cs b/src/Squidex.Infrastructure/Log/Internal/ConsoleLogProcessor.cs index 4b579bf5e..af582c278 100644 --- a/src/Squidex.Infrastructure/Log/Internal/ConsoleLogProcessor.cs +++ b/src/Squidex.Infrastructure/Log/Internal/ConsoleLogProcessor.cs @@ -14,7 +14,7 @@ using System.Threading.Tasks; namespace Squidex.Infrastructure.Log.Internal { - public class ConsoleLogProcessor : DisposableObjectBase + public sealed class ConsoleLogProcessor : DisposableObjectBase { private const int MaxQueuedMessages = 1024; private readonly IConsole console; @@ -37,32 +37,40 @@ namespace Squidex.Infrastructure.Log.Internal public void EnqueueMessage(LogMessageEntry message) { - try + if (!messageQueue.IsAddingCompleted) { - if (!IsDisposed) + try { messageQueue.Add(message); + return; + } + catch (Exception ex) + { + Debug.WriteLine($"Failed to enqueue log message: {ex}."); } } - catch (ObjectDisposedException) - { - Debug.WriteLine("Console queue disposed."); - } + + WriteMessage(message); + } + + private static void ProcessLogQueue(object state) + { + var processor = (ConsoleLogProcessor)state; + + processor.ProcessLogQueue(); } private void ProcessLogQueue() { foreach (var entry in messageQueue.GetConsumingEnumerable()) { - console.WriteLine(entry.Color, entry.Message); + WriteMessage(entry); } } - private static void ProcessLogQueue(object state) + private void WriteMessage(LogMessageEntry entry) { - var processor = (ConsoleLogProcessor)state; - - processor.ProcessLogQueue(); + console.WriteLine(entry.Color, entry.Message); } protected override void DisposeObject(bool disposing) @@ -70,7 +78,6 @@ namespace Squidex.Infrastructure.Log.Internal if (disposing) { messageQueue.CompleteAdding(); - messageQueue.Dispose(); try { @@ -78,10 +85,7 @@ namespace Squidex.Infrastructure.Log.Internal } catch (Exception ex) { - if (!ex.Is()) - { - throw; - } + Debug.WriteLine($"Failed to shutdown log queue grateful: {ex}."); } } } diff --git a/src/Squidex.Infrastructure/Squidex.Infrastructure.csproj b/src/Squidex.Infrastructure/Squidex.Infrastructure.csproj index 438c66919..cdbfcbd4d 100644 --- a/src/Squidex.Infrastructure/Squidex.Infrastructure.csproj +++ b/src/Squidex.Infrastructure/Squidex.Infrastructure.csproj @@ -10,6 +10,7 @@ + diff --git a/src/Squidex/Config/Orleans/SiloExtensions.cs b/src/Squidex/Config/Orleans/SiloExtensions.cs index c58028dd8..ee49c1284 100644 --- a/src/Squidex/Config/Orleans/SiloExtensions.cs +++ b/src/Squidex/Config/Orleans/SiloExtensions.cs @@ -35,7 +35,7 @@ namespace Squidex.Config.Orleans public static ClusterConfiguration WithDashboard(this ClusterConfiguration config) { - config.RegisterDashboard(); + // config.RegisterDashboard(); return config; } diff --git a/src/Squidex/Config/Orleans/SiloServices.cs b/src/Squidex/Config/Orleans/SiloServices.cs index eaffea049..466aa8b87 100644 --- a/src/Squidex/Config/Orleans/SiloServices.cs +++ b/src/Squidex/Config/Orleans/SiloServices.cs @@ -30,8 +30,8 @@ namespace Squidex.Config.Orleans if (clusterConfiguration != null) { - clusterConfiguration.Globals.RegisterBootstrapProvider("EventConsumers"); - clusterConfiguration.Globals.RegisterBootstrapProvider("RuleDequeuer"); + // clusterConfiguration.Globals.RegisterBootstrapProvider("EventConsumers"); + // clusterConfiguration.Globals.RegisterBootstrapProvider("RuleDequeuer"); var ipConfig = config.GetRequiredValue("orleans:hostNameOrIPAddress"); diff --git a/src/Squidex/Program.cs b/src/Squidex/Program.cs index d0a45c6bc..33ce73c07 100644 --- a/src/Squidex/Program.cs +++ b/src/Squidex/Program.cs @@ -28,7 +28,7 @@ namespace Squidex .AddApplicationPartsFromReferences(typeof(AppStateGrain).Assembly) .AddApplicationPartsFromReferences(typeof(EventConsumerGrain).Assembly) .AddApplicationPartsFromReferences(typeof(XmlRepositoryGrain).Assembly) - .UseDashboard(options => { options.HostSelf = false; }) + // .UseDashboard(options => { options.HostSelf = false; }) .UseContentRoot(Directory.GetCurrentDirectory()) .UseConfiguration( ClusterConfiguration.LocalhostPrimarySilo(33333)