Geekflare wird von unserem Publikum unterstützt. Wir können Affiliate-Provisionen durch den Kauf von Links auf dieser Website verdienen.
Teilen:

Wie werden Sie mit der Geekflare-API benachrichtigt, wenn Ihre Website ausfällt?

So-werden-Sie-benachrichtigt-wenn-Ihre-Site-mit-der-Geekflare-API-ausfällt
Invicti Web Application Security Scanner – die einzige Lösung, die eine automatische Verifizierung von Schwachstellen mit Proof-Based Scanning™ bietet.

Benutzer versuchen, auf Ihre Website zuzugreifen. Wissen Sie, was passiert ist? Es wird nicht angezeigt. Es gibt einige Fehler, die Sie vorher nicht erkannt haben. Benutzer sind frustriert und verlassen Ihre Website. Sie haben damit also einige treue Benutzer verloren.

Wie kann man dieses Problem lösen? Wie erfahren Sie von der Site Down, bevor Ihre Benutzer sie finden?

Es gibt zwei mögliche Wege:

Wenn es Ihnen nichts ausmacht, ein paar Dollar auszugeben, können Sie sich für eine Überwachungslösung wie . entscheiden StatusCake oder andere hier erwähnt.

Wenn Sie jedoch ein Entwickler sind oder nicht bereit sind, monatlich Geld auszugeben, können Sie davon profitieren Geekflare-API – Ist die Site verfügbar?

Ist Site Up? API überprüft, ob eine Site von verschiedenen Standorten aus aktiv ist oder nicht.

Lassen Sie mich Ihnen Python-Code zeigen, der Sie sofort benachrichtigt, wenn Ihre Website ausfällt über Google Mail.

Beginnen wir mit der Erkundung der Ist die Site aktiv? API.

Is Site Up? API

Bevor wir die API prüfen, müssen wir ein Paket namens „requests“ installieren, um mit APIs in Python zu arbeiten. Aber es ist nicht notwendig, nur Python zu verwenden. Sie können Ihre bevorzugte Sprache verwenden. Stellen Sie jedoch sicher, dass Sie die erforderlichen Dinge einrichten, um eine API-Anfrage zu stellen.

Also für diejenigen, die es sind mit Python Installieren Sie die Zugriffe Paket mit dem Befehl pip install requests

Schließen Sie die Einrichtung für andere Sprachen ab (wenn Sie eine andere Sprache als Python wählen) und fahren Sie mit den nächsten Schritten fort.

Jetzt geh zum Geekflare-API

Geekflare-API-Seite

Sie können verschiedene Arten von APIs finden, einschließlich Is Site Up? API, die uns für diesen Artikel interessiert. Um die Geekflare-APIs zu verwenden, benötigen wir einen API-Schlüssel, den wir erhalten können, indem wir uns für die Geekflare-API anmelden.

Klicken Sie auf Registrieren Frei Schaltfläche in der Kopfzeile und erstellen Sie ein Konto in der Geeflare-API.

Erstellen Sie ein Geekflare-API-Konto

Sobald Sie Ihr Konto erstellt haben, werden Sie zu weitergeleitet Dashboard der Geekflare-API. Im Dashboard finden Sie den API-Schlüssel und andere Details wie Ihre E-Mail, Ihren aktiven Plan usw.

Geekflare-API-Dashboard

Sie können den API-Schlüssel kopieren. Sehen wir uns nun die Dokumentation von an Ist Website aktiv API. Klicken Sie auf Ihr Profilsymbol und die Dokumentation.

Geekflare-API-Dokumentation

Es leitet Sie zur Geeflare-API-Dokumentation weiter.

Sie werden das finden Site-Status (Ist Site Up?) API-Dokumentation hier . Gehen Sie darauf zu.

Sie erhalten die Verwendung der API auf der rechten Seite. Wählen Sie Python aus der aus Code Snippets Abschnitt auf der rechten Seite. Wählen Sie Ihre bevorzugte Sprache, wenn Sie Python nicht verwenden.

Sie erhalten den Code zum Anrufen der Ist die Site aktiv? API. Lassen Sie uns es ein wenig modifizieren, was uns hilft, später einfach mehr Code hinzuzufügen. Sehen Sie sich den modifizierten Code in Python an.

import requests
import json

API_URL = "https://api.geekflare.com/up" 

def make_api_request(): 
    headers = { 
        'x-api-key': 'YOUR-API-KEY',
        'Content-Type': 'application/json'
    }
    payload = json.dumps({"url": "https://geekflare.com"})
    response = requests.request("POST", API_URL, data=payload, headers=headers) 
    return response.json()
    
if __name__ == '__main__': 
    data = make_api_request() 
    print(data)

Ersetzen Sie die IHR-API-SCHLÜSSEL mit Ihrem eigenen API-Schlüssel aus dem Geekflare-API-Dashboard. Es wird für jeden Benutzer anders sein. Kopieren Sie den API-Schlüssel aus dem Dashboard und fügen Sie ihn dem obigen Code hinzu

Mehrere Standorte

Der obige Code prüft, ob die Site von einem einzelnen Standort aus (New York, USA) verfügbar ist oder nicht. Aber wir können es von einem anderen Ort aus testen ProxyLand im Anfragetext.

Weitere verfügbare Standorte sind England (London) und Singapur. Wir können die passieren ProxyLand Daten zusammen mit der Website-URL wie folgt.

{
    "proxyCountry": "uk",
    "url": "geekflare.com"
}

Sie können jeden Ort passieren, den Sie bevorzugen verfügbare Standorte hier.

Wir haben den Code vervollständigt, um eine API-Anfrage zu stellen, die die Daten darüber abruft, ob eine Website verfügbar ist oder nicht. Jetzt ist es an der Zeit, etwas mehr Code zu schreiben, der E-Mails sendet, wenn die Site nicht erreichbar ist. Lass uns gehen.

Receiving Email When the Site is Down

Das ausführliche Tutorial finden Sie auf wie man E-Mails versendet Google Mail in Python Oder verwenden Sie den folgenden Code, der ein Paket namens verwendet Jagmail speziell zum Versenden von E-Mails entwickelt Google Mail.

Bevor wir eine E-Mail über Ihr Gmail-Konto senden, müssen wir die Erlaube weniger sichere Apps Optionen. Du kannst es einschalten hier .

Mal sehen, den Code.

def send_mail():
    gmail = yagmail.SMTP("gmail", "password")

    receiver = "receiver@domain.com"
    subject = "Testing Subject"
    body = "This is a testing mail"

    gmail.send(
        to=receiver,
        subject=subject,
        contents=body,
    )

Sie können das vollständige Tutorial von yagmail finden hier .

Jetzt haben wir Code für API-Anfragen und das Senden von E-Mails. Unser nächster Schritt ist der Aufruf der send_mail wenn wir einen schlechten Status von der API-Anfrage erhalten.

Woher wissen wir also, ob unsere Website down oder up ist? Wenn wir das anfordern Ist die Site aktiv? API, antwortet es mit einigen Daten wie folgt.

{
  "timestamp": 1671545622213,
  "apiStatus": "success",
  "apiCode": 200,
  "message": "Site is up.",
  "meta": {
    "url": "https://geekflare.com",
    "proxyCountry": "United Kingdom",
    "followRedirect": false,
    "test": {
      "id": "riah3dvi04ngaa1jw1b75smiibrus2a7"
    }
  },
  "data": {
    "statusCode": 200,
    "reasonPhrase": "OK"
  }
}

Sie finden einen Schlüssel namens Nachricht drin. Der Wert des Schlüssels Nachricht sagt uns, ob die Site up oder down ist. So können zwei Arten von Nachrichten wie folgt sein.

  • Website ist online.
  • Seite ist ausgefallen

Ich glaube, du hast es jetzt verstanden. Daher senden wir die E-Mail, wenn wir die Nachricht erhalten „Website ist ausgefallen.”. Der endgültige Code sieht wie folgt aus.

import requests
import json
import yagmail

API_URL = "https://api.geekflare.com/up"


def make_api_request():
    headers = {
        'x-api-key': 'YOUR-API-KEY',
        'Content-Type': 'application/json'
    }
    payload = json.dumps({
        "url": "https://geekflare.com",
        "followRedirect": True,
        "proxyCountry": "uk"
    })
    response = requests.request("POST", API_URL, data=payload, headers=headers)
    return response.json()


def send_mail(content):
    gmail = yagmail.SMTP("gmail", "password")
    receiver = "email@domain.com"
    subject = "Your Site is Down"
    gmail.send(
        to=receiver,
        subject=subject,
        contents=content,
    )


if __name__ == '__main__':
    data = make_api_request()
    message = data['message']

    ## seding the mail
    if message == 'Site is down':
        ## extracting the location and error
        location = data['meta']['proxyCountry']
        mail_content = "Your site is down due to unexpected error. See the useful data to resolve errors below.nn"
        if location:
            mail_content += f"{location}"
        mail_content += f"{data['data']['reasonPhrase']}nn"
        mail_content += "Check the error and resolve it as soon as possible."
        send_mail(mail_content)

Sie können den Inhalt der E-Mail nach Belieben aktualisieren. Wir haben das Versenden von E-Mails abgeschlossen, wenn unsere Website nicht verfügbar ist.

Aber es gibt noch ein Problem.

Wir müssen unseren Code ausführen, um zu überprüfen, ob unsere Website aktiv oder heruntergefahren ist. Wie oft führen wir es aus? Ja, das hängt von deinen Vorlieben ab. Nehmen wir an, wir müssen es jede Stunde überprüfen.

Wir können ein Terminal oder eine Befehlszeile öffnen und unseren Code jede Stunde ausführen. Aber es ist ein sich wiederholender Prozess und langweilig. Und manchmal können wir vergessen, es zu überprüfen. Also müssen wir den Code jede Stunde automatisch ausführen.

Hier können wir den Cron verwenden, um unseren Code jede Stunde automatisch auszuführen. Mal sehen, wie man es einrichtet.

Cron Setup

Sehen wir uns die Schritte zum Einrichten des Crons auf einem UNIX-basierten Betriebssystem an.

  • Terminal öffnen.
  • Führen Sie den Befehl aus crontab -e wodurch die crontab-Datei im Terminal geöffnet wird.
  • Drücken Sie die Taste i um in den INSERT-Modus zu gelangen.
  • Fügen Sie nun das Cron-Muster, das Python-Verzeichnis und unser Codedateiverzeichnis hinzu. Sie sehen das Beispiel unten.

0 * * * * /usr/bin/python3 /home/sample.py

cron
cron

Wir haben das Muster so eingestellt, dass der Code jede Stunde ausgeführt wird. Möglicherweise müssen Sie es jedoch je nach Anforderung auf jede Minute einstellen. Sie können also die verwenden Crontab-Guru oder andere Cron-Tools um das Cron-Muster für den Zeitplan zu generieren.

Das ist es. Wir haben die Einrichtung abgeschlossen, um benachrichtigt zu werden, wenn die Website nicht verfügbar ist.

Fazit

Verwenden Sie den Cron, um das Skript so zu planen, dass es regelmäßig auf Ihrem Cloud-Server die rund um die Uhr läuft, um per E-Mail benachrichtigt zu werden, wenn die Website nicht verfügbar ist. Automatisierung spart viel Zeit und funktioniert für uns. Nutzen Sie es also wie in diesem Artikel.

Viel Spaß beim Überwachen

Danke an unsere Sponsoren
Weitere großartige Lektüre zum Thema Entwicklung
Treiben Sie Ihr Geschäft an
Einige der Tools und Dienste, die Ihr Unternehmen beim Wachstum unterstützen.
  • Invicti verwendet das Proof-Based Scanning™, um die identifizierten Schwachstellen automatisch zu verifizieren und innerhalb weniger Stunden umsetzbare Ergebnisse zu generieren.
    Versuchen Sie es mit Invicti
  • Web-Scraping, Wohn-Proxy, Proxy-Manager, Web-Unlocker, Suchmaschinen-Crawler und alles, was Sie zum Sammeln von Webdaten benötigen.
    Versuchen Sie es mit Brightdata
  • Semrush ist eine All-in-One-Lösung für digitales Marketing mit mehr als 50 Tools in den Bereichen SEO, Social Media und Content-Marketing.
    Versuchen Sie es mit Semrush
  • Intruder ist ein Online-Schwachstellenscanner, der Cyber-Sicherheitslücken in Ihrer Infrastruktur findet, um kostspielige Datenschutzverletzungen zu vermeiden.
    MIT DER INTELLIGENTEN SCHADENKALKULATION VON Intruder