SolidPing vs. Gatus
Gatus ist das Tool, das es zu schlagen gilt, wenn Ihr Monitoring in Git leben soll. Apache-2.0, 100 % Go, ein Binary unter 20 MB und ein Konfigurationsmodell, das YAML ist und nur YAML. Für Teams, die jedes Stück Infrastruktur als Code behandeln, ist das keine Einschränkung — es ist der ganze Sinn der Sache, und der Grund, warum Gatus über 10.000 Sterne hat.
Beide Seiten hier sind selbst gehostet. Gatus hat keinen gehosteten Dienst, daher wird es mit SolidPing self-hosted verglichen — kostenlos, AGPL-3.0, ohne Tarif und ohne Obergrenzen. Unsere gehostete Version gibt es und sie wird weiter unten beschrieben, aber die Tabelle hängt nicht davon ab.
SolidPing geht einen anderen Kompromiss ein: eine Oberfläche und eine Config-as-Code-Schnittstelle, Mandantenfähigkeit und eine deutlich breitere Palette an Dingen, die es prüfen kann. Auf dieser Seite geht es darum, welcher Kompromiss zu Ihnen passt.
Ihr YAML kann mitkommen. SolidPing liefert einen eigenen Gatus-Importer mit Dry-Run-Modus mit.
Wenn wir ein Detail zu Gatus falsch wiedergegeben haben, bitte ein Issue eröffnen — wir wollen, dass es stimmt.
Auf einen Blick
| SolidPing (self-hosted) | Gatus | |
|---|---|---|
| Lizenz | AGPL-3.0 | Apache 2.0 |
| Sterne / Version | zEr0 (helfen Sie uns wachsen) | 10.100+ · v5.34.0 |
| Kosten | Kostenlos — unbegrenzte Monitore, Prüfrate, Worker und Statusseiten-Domains; 30 Mitglieder standardmäßig | Kostenlos — unbegrenzt |
| Geschrieben in | Go | Go |
| Check-Typen | 40 | 9 (HTTP/HTTPS, TCP, ICMP, DNS, WebSocket, SSH, TLS, STARTTLS, External) |
| Konfiguration | Oberfläche und YAML-Export / -Import / -Apply | Nur YAML — keine Konfiguration über die Oberfläche |
| Datenbank | SQLite oder PostgreSQL | In-Memory (Standard), SQLite, PostgreSQL |
| Persistenz | Immer persistiert | Standardmäßig In-Memory — Daten gehen beim Neustart verloren, sofern nicht konfiguriert |
| Minimales Intervall | 10 Sekunden (Browser-Checks 60 s, JS 30 s) | Konfigurierbar |
| Multi-Region-Checks | Verteilte Worker, die Sie überall betreiben | Mehrere Instanzen betreiben; keine eingebaute Aggregation |
| Multi-User / RBAC | Mandantenfähig, Rollen, Nur-Lese-Konten | Keine |
| Authentifizierung | OAuth, OIDC, SAML, LDAP, Passkeys, TOTP | Basic Auth, OIDC, API-Schlüssel |
| Bereitschaft & Eskalation | Rotationspläne, Vertretungen, iCal, mehrstufige Eskalation | Nicht verfügbar |
| Heartbeat- / Cron-Checks | Ja | Nicht verfügbar |
| Alarm-Provider | 16, darunter SMS, Sprache und WhatsApp über Ihr eigenes Twilio-Konto | 20+ |
| Statusseiten | Mehrere, Abschnitte, eigene Domains, Abonnenten | Eine Statusseite |
| Bedingungssyntax | Assertions je Check-Typ | Mächtig — JSONPath, len(), has(), pat() |
| Git-Ops-Extras | — | Automatisches Anlegen und Schließen von GitHub- / GitLab-Issues |
| Prometheus-Metriken | Ja | Ja |
| API | Vollständiges REST, lesend und schreibend, sp-CLI | Nur lesend |
| Import aus Gatus | Eingebaut | — |
Wo SolidPing die stärkere Wahl ist
Sie wollen eine Oberfläche und nicht nur eine Datei. Gatus wird ausschließlich über YAML konfiguriert; es gibt keine Möglichkeit, einen Check aus dem Browser hinzuzufügen. Das ist Absicht und viele Teams lieben es, aber es bedeutet, dass jede Änderung ein Commit ist und jeder Nicht-Entwickler außen vor bleibt. SolidPing gibt Ihnen beides — im Dashboard anklicken, oder die ganze Organisation nach YAML exportieren und aus der CI anwenden.
Mehr als eine Person, mit unterschiedlichen Berechtigungen. Gatus hat kein Multi-User-Modell und kein RBAC; die API ist nur lesend. SolidPing ist mandantenfähig, mit Rollen und Nur-Lese-Konten, hinter Ihrem bestehenden Identity Provider.
Sie brauchen mehr als neun Endpunkt-Typen. Gatus deckt die netzwerkseitigen Grundlagen gut ab. SolidPing ergänzt Datenbanken, Mailprotokolle (SMTP, IMAP, POP3 und einen passiven E-Mail-Empfangs-Check), Message Queues, SNMP, Docker und Kubernetes, Headless-Browser- und JavaScript-Checks sowie Heartbeat-/Cron-Monitoring — was Gatus überhaupt nicht bietet.
Mehr als eine Statusseite. Gatus liefert eine einzige Statusseite aus. Wenn Sie eine pro Kunde oder pro Produkt brauchen, auf jeweils eigener Domain, ist das ein struktureller Unterschied.
Jemand muss alarmiert werden. Gatus alarmiert über 20+ Provider, hat aber kein Bereitschaftsmodell — keine Rotationen, keine Eskalation, keine Bestätigung.
Daten, die einen Neustart standardmäßig überleben. Gatus arbeitet im Speicher, sofern Sie keinen Storage konfigurieren. Für eine zustandslose Statusseite ist das ein guter Standard, und ein überraschender beim ersten Pod-Neustart.
Wo Gatus die stärkere Wahl ist
Configuration as Code, richtig gemacht. Wenn Ihr Maßstab lautet „es existiert nicht, solange es nicht in Git liegt“, ist Gatus von Grund auf genau so gebaut, und unsere YAML-Schnittstelle ist ein zweiter Weg statt des einzigen.
Die Bedingungssyntax ist wirklich besser. JSONPath mit len(), has() und pat()
liefert Assertions, die ausdrucksstärker sind als unsere, und es ist die Funktion, die wir
an Gatus am meisten respektieren.
GitHub- und GitLab-Issue-Automatisierung. Gatus kann ein Issue eröffnen, wenn ein Check fehlschlägt, und es schließen, wenn er sich erholt. Nichts in SolidPing tut das heute.
Es ist kleiner und einfacher zu betreiben. Ein Binary unter 20 MB, ganz ohne Datenbank, wenn Sie keine wollen. Für eine zustandslose Statusseite in Kubernetes ist das schwer zu schlagen.
Mehr Alarm-Provider, 20+ gegenüber unseren 16.
Apache 2.0 statt AGPL. Wenn Ihre Rechtsabteilung mit AGPL nicht glücklich ist, entscheidet dieser Unterschied unabhängig von den Funktionen.
Das andere Modell, auf beiden Seiten
Gatus hat keinen gehosteten Dienst. Der Betrieb gehört dazu; es gibt keinen Anbieter, dem man ihn übergeben könnte.
SolidPing hat einen, mit demselben Binary. SolidPing Cloud ist kostenlos für 100
Monitore und 10 Checks pro Minute, danach 5 € / 15 € / 45 €, mit sechs geteilten
Prüfregionen, die Sie nicht ausrollen müssen. Es ist dasselbe Produkt mit wieder
angelegten Tarifgrenzen und ohne SMS, Sprache oder WhatsApp, die eine Self-Hosting-Funktion
bleiben, weil die Netzbetreiber pro Nachricht abrechnen. Den GitOps-Workflow können Sie
auf beiden behalten: die Organisation nach YAML exportieren und per sp apply aus der CI
anwenden, gegen gehostet wie selbst gehostet gleichermaßen.
Migration von Gatus
POST /api/v1/orgs/{org}/checks/import/convert?source=gatus&dryRun=true
Führen Sie es mit dryRun=true aus und lesen Sie das Ergebnis, bevor Sie irgendetwas
anlegen. Nicht alle Gatus-Bedingungen haben eine SolidPing-Entsprechung; der Konverter
meldet, was er nicht übersetzen konnte, statt es stillschweigend zu verwerfen.
Was sollten Sie wählen?
Bleiben Sie bei Gatus, wenn Configuration as Code ein Prinzip und keine Vorliebe ist, eine Statusseite ausreicht und die neun Endpunkt-Typen abdecken, was Sie betreiben. Es ist ein gut gebautes Tool mit einer klaren Philosophie.
Schauen Sie sich SolidPing an, wenn Sie Leute im Produkt brauchen, die kein YAML schreiben, mehr als eine Statusseite, Protokolle jenseits der Netzwerk-Grundlagen oder eine Bereitschaftsrotation. Den GitOps-Workflow können Sie behalten — nach YAML exportieren und aus der CI anwenden — ohne ihn zum einzigen Zugang zu machen.