From f40278e7e40a43a88580795f8230ed86e92bf9a7 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=D0=91=D0=BE=D1=80=D0=B8=D1=81=D0=BE=D0=B2=20=D0=A1=D0=B5?= =?UTF-8?q?=D0=BC=D1=91=D0=BD=20=28kotopheiop=29?= Date: Fri, 12 Dec 2025 17:15:39 +0500 Subject: [PATCH] fix: handle CPU threshold error to prevent false notifications Previously, when GetTgCpu() failed, the error was ignored and threshold defaulted to 0, causing notifications to be sent for any CPU usage. Now the job properly checks for errors and skips notifications if: - The threshold cannot be retrieved (error) - The threshold is not set or is 0 This ensures notifications are only sent when CPU usage exceeds the configured threshold value from settings. --- web/job/check_cpu_usage.go | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/web/job/check_cpu_usage.go b/web/job/check_cpu_usage.go index 2ea87747..b2208f31 100644 --- a/web/job/check_cpu_usage.go +++ b/web/job/check_cpu_usage.go @@ -22,7 +22,11 @@ func NewCheckCpuJob() *CheckCpuJob { // Run checks CPU usage over the last minute and sends a Telegram alert if it exceeds the threshold. func (j *CheckCpuJob) Run() { - threshold, _ := j.settingService.GetTgCpu() + threshold, err := j.settingService.GetTgCpu() + if err != nil || threshold <= 0 { + // If threshold cannot be retrieved or is not set, skip sending notifications + return + } // get latest status of server percent, err := cpu.Percent(1*time.Minute, false)