From 9800d5a6726f19377d4330992636e0b6f0e4d941 Mon Sep 17 00:00:00 2001 From: John Cardinal Date: Thu, 19 Jan 2023 02:00:26 +0000 Subject: [PATCH] --- server/biz/JobsBiz.cs | 6 ++---- server/generator/SockBotSubscriptionServerHealthChecks.cs | 7 ++++--- 2 files changed, 6 insertions(+), 7 deletions(-) diff --git a/server/biz/JobsBiz.cs b/server/biz/JobsBiz.cs index 5c1e657..de301ac 100644 --- a/server/biz/JobsBiz.cs +++ b/server/biz/JobsBiz.cs @@ -261,10 +261,8 @@ namespace Sockeye.Biz if (!KeepOnWorking()) return; //SOCKBOT - SUBSCRIPTION SERVER HEALTH CHECKS - - - - + await SockBotSubscriptionServerHealthChecks.DoWorkAsync(); + if (!KeepOnWorking()) return; //JOB SWEEPER await CoreJobSweeper.DoWorkAsync(); diff --git a/server/generator/SockBotSubscriptionServerHealthChecks.cs b/server/generator/SockBotSubscriptionServerHealthChecks.cs index e7e7aed..788a668 100644 --- a/server/generator/SockBotSubscriptionServerHealthChecks.cs +++ b/server/generator/SockBotSubscriptionServerHealthChecks.cs @@ -12,14 +12,14 @@ namespace Sockeye.Biz /// - /// Check the health of subscribers servers, basically a ping check - /// trigger notification if any fail the test excessively (some slack for intermittent comm. issues) + /// Check the health of subscribers servers using the /health endpoint + /// trigger notification if any fail the test 3 times (some slack for intermittent comm. issues) /// internal static class SockBotSubscriptionServerHealthChecks { private static ILogger log = Sockeye.Util.ApplicationLogging.CreateLogger("SockBotSubscriptionServerHealthChecks"); private static DateTime lastSweep = DateTime.MinValue; - private static TimeSpan HEALTHCHECK_EVERY_INTERVAL = new TimeSpan(0, 15, 10);//every 15 minutes roughly + private static TimeSpan HEALTHCHECK_EVERY_INTERVAL = new TimeSpan(0, 5, 10);//every 5 minutes roughly meaning 15 minutes down is highest fail state //////////////////////////////////////////////////////////////////////////////////////////////// // DoSweep // @@ -71,6 +71,7 @@ namespace Sockeye.Biz var responseText = await res.Content.ReadAsStringAsync(); srv.LastHealthCheck = DateTime.UtcNow; srv.LastHealthStatus = responseText; + log.LogDebug($"Health check server {srv.Name} response {responseText}"); if (res.IsSuccessStatusCode && responseText == "Healthy") { //a-ok