Bringen Sie Struktur in das, was sonst droht, eine ewige Baustelle zu sein: Mit suvi, dem Task-Supervisor von ECMind, planen Sie Aufgaben, halten Sie Hintergrundprozesse dauerhaft am Laufen und reagieren auf Ereignisse. suvi punktet mit einer benutzerfreundlichen Web-Oberfläche, ideal zu versionierenden Konfigurationsdateien und zentralem Logging.

Anwendungsfälle

In vielen Projekten sind die Windows-Aufgabenplanung oder der Cron-Daemon in Linux die natürliche Wahl, um Aufgaben zu planen. Leider stösst man allzu oft an die Grenzen dieser Programme:

  • Zu viele Tasks werden schnell unübersichtlich.
  • Import und Export von Tasks in der Windows-Aufgabenplanung sind sehr umständlich und unflexibel.
  • Es gibt keine Änderungsverwaltung (z.B. Git), von der komplexe Projekten mit mehreren Beteiligten meist profitieren.
  • Log-Einträge sind überall im System verteilt.
  • Tasks lassen sich nur umständlich von aussen starten und überwachen.

So vereinfachen Sie Ihre Arbeit mit suvi

  • Definieren Sie Tasks, die immer am Laufen gehalten werden müssen oder zu bestimmten Zeiten starten sollen – mit einer einfachen dateibasierten Konfiguration.
  • Tauschen Sie Dateien einfach zwischen Projekten aus und pflegen Sie diese in herkömmlichen Versionsverwaltungssystemen.
  • Über eine einfache Weboberfläche behalten Sie alles im Blick: die laufenden Tasks, deren Log-Ausgaben sowie alle Ausführungspläne und zugehörigen Parameter.
  • Mit der einfachen Web-API starten Sie Tasks im Bedarfsfall, lesen Sie Ergebnisse und Laufzeitparameter aus und überwachen die suvi-Leistungsdaten.

Überall einsatzbereit

Unser benutzerfreundlicher und flexibler Supervisor läuft auf den Zielplattformen Windows (Service) oder Linux (Daemon oder Docker). Somit profitieren sowohl klassische DMS- und Archivserver von den praktischen suvi-Funktionen als auch cloud-native-Umgebungen.

Standards, auf die Sie bauen können

Die Konfiguration von Tasks erfolgt in einfachen JSON-Dateien:

{
    "type": "keepalive",
    "exec": "system",
    "args": [
        [ "prestart.exe", "--config-file=example.toml" ],
        [ "mainjob.exe", "/foreground" ]
    ],
    "cwd": "d:/apps/services/example",
    "tokens": ["remote-start-4711"],
    "info": "Dieser Text wird in der Weboberfläche angezeigt und dient der Dokumentation dieses Beispiel-Tasks."
}
  • Regelmässige Tasks konfigurieren Sie mit einem an crontab angelehnten Syntax (Minute, Stunde, Tag des Monats, Monat, Wochentag).
  • Programmatisch lassen sich Tasks über simple WebHooks starten. Die innere Logik von suvi stellt dabei sicher, dass Tasks nicht mehrfach gleichzeitig gestartet werden.
  • Programmprotokolle aus STDOUT und STDERR stehen im Dateisystem via Weboberfläche und REST-/JSON-API zur Verfügung.
  • Einfache Überwachung: Im Web-Interface von suvi sehen Sie den Systemstatus jederzeit auf einen Blick. Noch einfacher gelingt die Überwachung über den Telemetrie-Endpunkt, den Sie schnell über seine bekannte JSON-Syntax anbinden können:
{
  "continue": true,
  "now": 1661430275,
  "processes": 1,
  "schedules": 38,
  "startup": 1661411742,
  "tasks": 56,
  "telemetry_1": {
    "cycle": 6,
    "error": 2,
    "scheduled-start": 9,
    "task-added": 10,
    "task-end-beispiel-task-1": 1,
    "task-end-beispiel-task-2": 1,
    "task-end-beispiel-task-3": 1,
    "task-scheduled-beispiel-task-1": 1,
    "task-scheduled-beispiel-task-2": 1,
    "task-scheduled-beispiel-task-3": 1
  },
  "telemetry_5": {
    "cycle": 30,
    "error": 2,
    "scheduled-start": 46,
    "task-added": 51,
    "task-scheduled-beispiel-task-1": 3,
    "task-scheduled-beispiel-task-2": 3,
    "task-scheduled-beispiel-task-3": 3
  },
  "telemetry_15": {
    "cycle": 90,
    "error": 2,
    "scheduled-start": 138,
    "task-added": 15,
    "task-end-beispiel-task-1": 9,
    "task-end-beispiel-task-2": 9,
    "task-end-beispiel-task-3": 9,
    "task-scheduled-beispiel-task-1": 9,
    "task-scheduled-beispiel-task-2": 9,
    "task-scheduled-beispiel-task-3": 9
  },
  "version": "2.2.0"
}

Talend®-Jobs und suvi

Haben Sie regelmässig auszuführende Talend-Jobs, die beispielsweise auf unseren Talend® Components für enaio® und yuuvis® basieren? Diese profitieren in besonderer Weise von einem Start und der Überwachung durch suvi.

  • suvi kennt neben der Möglichkeit, beliebige Programme auszuführen, auch den Startparameter talend: Als ZIP-Paket exportierte Jobs können dort direkt referenziert werden.
  • Aus Talend® exportierte Jobs können von suvi selbstständig entpackt und die zur Laufzeit gültige Version bis zum Ende vorgehalten werden.
  • suvi sorgt so dafür, dass immer die richtigen Abhängigkeiten geladen werden.
  • Im laufenden Betrieb kann auf neue Job-Versionen gewechselt werden, ohne die gerade ausgeführte Versionen zu unterbrechen oder Dateisystemkonflikte manuell umgehen zu müssen.
  • Kontextvariablen können Sie mitgeben und somit denselben Talend-Job in unterschiedlichen Tasks parallel in abweichenden Ausprägungen starten.