fix: 添加数据库备份窗口逻辑,避免在备份期间进行心跳检查

This commit is contained in:
2026-03-25 09:07:18 +08:00
parent 92634fba8c
commit b899d202bb

View File

@@ -40,6 +40,9 @@ namespace AutoNotificatPhone.Models
// Kafka 心跳超时阈值(分钟) // Kafka 心跳超时阈值(分钟)
private const int KafkaStaleMinutes = 5; private const int KafkaStaleMinutes = 5;
// 数据库备份窗口(北京时间 3:00-4:00该时段跳过心跳检查
private const int KafkaCheckSkipStartHour = 3;
private const int KafkaCheckSkipEndHour = 4;
// 数据库连接失败累计到 N 次才触发一次告警,避免告警风暴 // 数据库连接失败累计到 N 次才触发一次告警,避免告警风暴
private const int KafkaDbAlertTriggerCount = 8; private const int KafkaDbAlertTriggerCount = 8;
@@ -499,6 +502,13 @@ namespace AutoNotificatPhone.Models
{ {
try try
{ {
// 北京时间 3:00-4:00 为数据库备份窗口,此时不做心跳检查,避免误报
var beijingTime = DateTime.UtcNow.AddHours(8);
if (beijingTime.Hour >= KafkaCheckSkipStartHour && beijingTime.Hour < KafkaCheckSkipEndHour)
{
return;
}
// 从配置构建连接串 // 从配置构建连接串
var connectionString = BuildPostgresConnectionString(); var connectionString = BuildPostgresConnectionString();
if (string.IsNullOrWhiteSpace(connectionString)) if (string.IsNullOrWhiteSpace(connectionString))