App-Statusseite mit Oh Dear! – schnell, einfach und zuverlässig

Zeig den Serverstatus deiner App direkt auf deiner Startseite an

profile
Von Janis Kelemen
23. März 2023
App-Statusseite mit Oh Dear! – schnell, einfach und zuverlässig

Heutzutage ist eine Statusseite echt ein Muss, und zum Glück gibt's viele gute Dienste, die den Zustand deiner Anwendung im Auge behalten und dich benachrichtigen, wenn was nicht läuft.

Wir bei HelpSpace nutzen Oh Dear! für die Überwachung unserer Website und API. Der Dienst bietet jede Menge Funktionen (vor allem für Laravel-Anwendungen) und eine übersichtliche Statusseite, die du sofort nutzen kannst.

HelpSpace Status Page powered by OhDear

Eine Art versteckte Funktion ist der JSON-Endpunkt, den die Statusseite über https://status.yoursite.com/json bereitstellt.

Er gibt ein Objekt mit allen Details zu deiner Domain und einem Attribut namens summarizedStatus zurück, mit dem du auf deiner Website einen kleinen Indikator anzeigen kannst, um deinen Kunden zu zeigen, ob es Probleme gibt oder ob alles reibungslos läuft.

Hier ist ein Code-Schnipsel, der tailwindcss und alpine.js verwendet und den du direkt in deine Website kopieren und einfügen kannst. Ändere einfach die Domain und es sollte sofort funktionieren:

<div x-cloak 
   x-show="!isLoading" 
   x-data="{
             status: {},
             isLoading: true,
             async retrieveStatus() {
                this.status = await (await fetch('https://status.yoursite.com/json')).json();
                this.isLoading = false;
             }
           }"
   x-init="retrieveStatus"
>
  <span class="inline-block h-2 w-2 rounded-full mr-1" 
     x-bind:class="status.summarizedStatus == 'up' ? 'bg-green-500' : 'bg-red-500'"></span>
  <a href="https://status.yoursite.com" 
     x-text="status.summarizedStatus == 'up' ? 'Alle Systeme betriebsbereit!' : 'Oh je!'"></a>
</div> 

Und so sieht das Ganze dann aus:

HelpSpace_status_indicator.png

Ziemlich cool, oder? Natürlich kannst du dich richtig austoben und deine eigene Statusseite erstellen oder eine noch detailliertere Meldung erhalten, wenn eine Domain oder ein Dienst ausgefallen ist.