From cd4348762d94c01877ff434b3c0f11868ae478c6 Mon Sep 17 00:00:00 2001 From: Raymond den Haan Date: Tue, 13 Feb 2024 14:36:34 +0100 Subject: [PATCH] Fixed time to be parsed as UTC and made sure to remove heartbeats that have been processed --- .../HostedServices/InstanceHeartbeatMonitorService.cs | 7 ++++--- 1 file changed, 4 insertions(+), 3 deletions(-) diff --git a/src/modules/Elsa.Hosting.Management/HostedServices/InstanceHeartbeatMonitorService.cs b/src/modules/Elsa.Hosting.Management/HostedServices/InstanceHeartbeatMonitorService.cs index 5c03d80d0..e8635df70 100644 --- a/src/modules/Elsa.Hosting.Management/HostedServices/InstanceHeartbeatMonitorService.cs +++ b/src/modules/Elsa.Hosting.Management/HostedServices/InstanceHeartbeatMonitorService.cs @@ -68,14 +68,15 @@ public class InstanceHeartbeatMonitorService : IHostedService, IDisposable foreach (var heartbeat in heartbeats) { - var lastHeartbeat = DateTime.Parse(heartbeat.SerializedValue); + var lastHeartbeat = DateTimeOffset.Parse(heartbeat.SerializedValue).UtcDateTime; + if (DateTime.UtcNow - lastHeartbeat <= _heartbeatSettings.InstanceDeactivatedPeriod) - { continue; - } var instanceName = heartbeat.Key.Substring(InstanceHeartbeatService.HeartbeatKeyPrefix.Length); await notificationSender.SendAsync(new InstanceDeactivated(instanceName)); + + await store.DeleteAsync(heartbeat.Key, default); } } } \ No newline at end of file