From b58c8114f4a11bcba55c4b04ea2835fad547320e Mon Sep 17 00:00:00 2001 From: filesite Date: Mon, 30 Jun 2025 06:34:38 +0800 Subject: [PATCH] add max query time --- conf/config.json | 1 + monitor.mjs | 10 +++++++++- 2 files changed, 10 insertions(+), 1 deletion(-) diff --git a/conf/config.json b/conf/config.json index 6c620a7..bbffedb 100644 --- a/conf/config.json +++ b/conf/config.json @@ -8,6 +8,7 @@ "request_timeout": 10, "monitFrequence": 10, "resultQueryFrequence": 1, + "resultMaxQueryTime": 3, "monit_urls": [ "https://tajian.tv", "https://filesite.io" diff --git a/monitor.mjs b/monitor.mjs index cef4819..2dbdfd7 100644 --- a/monitor.mjs +++ b/monitor.mjs @@ -94,6 +94,7 @@ class Monitor { common.log('Cronjob of url monit started.'); } + //add query_time for every task async queryTasks() { const _self = this; let configs = await _self.getConfig(); @@ -103,6 +104,8 @@ class Monitor { task = _self.tasks[index]; if (task.status == 'done' || task.status == 'failed') {continue;} + task.query_time = typeof(task.query_time) != 'undefined' ? task.query_time + 1 : 1; + taskRes = await common.queryHeroUnionTask(task.id, configs); if (taskRes && taskRes.code == 1) { _self.tasks[index] = taskRes.task; //更新任务数据 @@ -138,7 +141,12 @@ class Monitor { common.saveLog(logFile, JSON.stringify(logData) + `\n`); } }else { - common.error('Task query failed, url: %s, task id: %s', task.url, task.id, taskRes); + common.error('[%s] Task query failed, url: %s, task id: %s', task.query_time, task.url, task.id, taskRes); + + //set task fail when it come to max query time + if (task.query_time >= configs.resultMaxQueryTime) { + task.status = 'failed'; + } } }