ソースを参照

hotfix: fixed bugs found during feature/server/disjunct-checks, which also apply already to the master

Christian Kahlau 2 年 前
コミット
3a7203b1e7

+ 1 - 1
server/src/ctrl/database.class.ts

@@ -351,7 +351,7 @@ export class Database extends SQLiteController {
       if (oldConf) {
         // UPDATE
         if (oldConf.title !== conf.title) {
-          await this.stmt('UPDATE HealthCheckConfig SET Title = ?', [conf.title]);
+          await this.stmt('UPDATE HealthCheckConfig SET Title = ? WHERE ID = ?', [conf.title, oldConf.id]);
         }
 
         let updValues: any[][] = [];

+ 12 - 12
server/src/ctrl/http-check-controller.class.ts

@@ -23,10 +23,10 @@ export class HttpCheckController {
         const configs = await this.db.getHttpCheckConfigs();
 
         for (const conf of configs) {
-          if (!conf) return;
-          if (!conf.active) return;
+          if (!conf) continue;
+          if (!conf.active) continue;
 
-          await this.scheduleCheck(conf);
+          this.scheduleCheck(conf);
 
           Logger.info('[INFO] Initial HTTP Service Check for', conf.title, '...');
           await this.timerTick(conf);
@@ -39,26 +39,26 @@ export class HttpCheckController {
     })();
   }
 
-  async updateCheck(status: ServiceChangedStatus, conf: HttpCheckConfig) {
+  updateCheck(status: ServiceChangedStatus, conf: HttpCheckConfig) {
     const subscriber = this.subscriptions.find(sub => sub.conf.id === conf.id);
 
     switch (status) {
       case ServiceChangedStatus.Created:
       case ServiceChangedStatus.Activated:
-        await this.scheduleCheck(conf);
+        this.scheduleCheck(conf);
         break;
       case ServiceChangedStatus.Deactivated:
-        await this.unscheduleCheck(subscriber);
+        this.unscheduleCheck(subscriber);
         break;
       case ServiceChangedStatus.Rescheduled:
-        await this.rescheduleCheck(conf, subscriber);
+        this.rescheduleCheck(conf, subscriber);
         break;
       default:
         break;
     }
   }
 
-  private async scheduleCheck(conf: HttpCheckConfig, log = true) {
+  private scheduleCheck(conf: HttpCheckConfig, log = true) {
     let interval = Number(conf.interval);
     if (Number.isNaN(interval)) interval = defaults.serviceChecks.interval;
 
@@ -69,13 +69,13 @@ export class HttpCheckController {
     return sub;
   }
 
-  private async rescheduleCheck(conf: HttpCheckConfig, sub?: Subscriber) {
+  private rescheduleCheck(conf: HttpCheckConfig, sub?: Subscriber) {
     Logger.info('[INFO] Rescheduling HTTP Service Check for', conf.title);
-    await this.unscheduleCheck(sub, false);
-    await this.scheduleCheck(conf, false);
+    this.unscheduleCheck(sub, false);
+    this.scheduleCheck(conf, false);
   }
 
-  private async unscheduleCheck(sub?: Subscriber, log = true) {
+  private unscheduleCheck(sub?: Subscriber, log = true) {
     if (!sub) return;
 
     if (log) Logger.info('[INFO] Removing HTTP Service Check for', sub.conf.title);