Verwendung von Prometheus und Grafana zur Implementierung von Überwachung und Alarmierung in Beego

WBOY
Freigeben: 2023-06-22 09:06:09
Original
878 Leute haben es durchsucht

Mit dem Aufkommen von Cloud Computing und Microservices hat auch die Anwendungskomplexität zugenommen. Daher werden Überwachung und Diagnose zu einer wichtigen Entwicklungsaufgabe. In dieser Hinsicht sind Prometheus und Grafana zwei beliebte Open-Source-Überwachungs- und Visualisierungstools, die Entwicklern helfen können, Anwendungen besser zu überwachen und zu analysieren.

In diesem Artikel erfahren Sie, wie Sie Prometheus und Grafana verwenden, um Überwachung und Alarmierung im Beego-Framework zu implementieren.

1. Einführung

Beego ist ein Open-Source-Framework für schnelle Webanwendungen, das die MVC-Architektur unterstützt und über gemeinsame Funktionen wie Routing, ORM und Session verfügt. Es ist effizient, einfach und flexibel und wird von immer mehr Menschen verwendet Entwickler verwenden.

Prometheus ist ein System- und Serviceüberwachungstool, das verschiedene Metriken sammelt und in einer Zeitreihendatenbank speichert. Grafana ist eine sehr beliebte Open-Source-Visualisierungsplattform, die eine Verbindung mit einer Vielzahl von Datenquellen herstellen kann, um schöne und hochgradig anpassbare Dashboards zu erstellen.

Durch die Verwendung von Prometheus und Grafana im Beego-Framework zur Implementierung von Überwachung und Alarmierung können wir den Betriebsstatus der Anwendung besser verstehen und umgehend reagieren, wenn eine Ausnahme in der Anwendung auftritt.

2. Installieren und konfigurieren Sie Prometheus

  1. Laden Sie Prometheus herunter

Laden Sie die Binärdatei von der offiziellen Prometheus-Website herunter und extrahieren Sie sie in das angegebene Verzeichnis.

  1. Prometheus konfigurieren

Erstellen Sie die Konfigurationsdatei prometheus.yml im Prometheus-Installationsverzeichnis und konfigurieren Sie sie wie folgt:

global:
scrape_interval: 15s
valuation_interval: 15s

scrape_configs:

  • Jobname: ' beego '
    scrape_interval: 5s
    static_configs:

    • targets: ['localhost:8080']

Unter diesen definiert die globale Konfiguration die Häufigkeit der Erfassung von Indikatoren, und die scrape_configs-Konfiguration definiert den zu überwachenden Job und die Erfassungshäufigkeit und die Überwachungsadresse.

  1. Prometheus starten

Geben Sie das Prometheus-Installationsverzeichnis im Befehlsterminal ein und geben Sie den folgenden Befehl ein, um Prometheus zu starten:

./prometheus --config.file=prometheus.yml

Prometheus wird zu diesem Zeitpunkt gestartet und Hören Sie sich den 9090-Port an. Sie können über http://localhost:9090 auf die Prometheus-Weboberfläche zugreifen.

3. Verwenden Sie Prometheus in Beego.

  1. Abhängigkeiten hinzufügen „

Indikatoren definieren

Definieren Sie die Indikatoren, die im Controller der Beego-Anwendung überwacht werden müssen, zum Beispiel:
  1. var myCounter = prometheus.NewCounter(prometheus.CounterOpts{
  2. Name: „my_counter“,
Hilfe : „Das ist mein Zähler“,

})

Unter anderem wird die NewCounter-Funktion verwendet, um einen Zähler mit dem Namen my_counter zu erstellen und die Hilfeinformationen für diesen Indikator zu definieren.


Registrieren Sie die Metrik

Registrieren Sie in der Init-Funktion der Beego-Anwendung die Metrik und registrieren Sie sie bei Prometheus:
  1. func init() {
  2. prometheus.MustRegister(myCounter)
}

Exportieren Sie die Metrik

Nachdem Sie den Indikator definiert und bei Prometheus registriert haben, müssen Sie den Indikatorwert in die Anwendung exportieren. Fügen Sie im Controller der Beego-Anwendung die folgende Codezeile hinzu, um den Wert der Metrik zu erhöhen:
  1. myCounter.Inc()
Die obige Codezeile wird bei jedem Abschluss des Anforderungshandlers aufgerufen, um den Wert der Metrik zu erhöhen Schalter.

4. Grafana installieren und konfigurieren

Grafana herunterladen und installieren

Laden Sie die neueste Binärdatei von der offiziellen Grafana-Website herunter und extrahieren Sie sie in das angegebene Verzeichnis.
  1. Grafana starten

Geben Sie im Befehlsterminal das Installationsverzeichnis von Grafana ein und geben Sie den folgenden Befehl ein, um Grafana zu starten:
  1. ./bin/grafana-server web
Grafana wird zu diesem Zeitpunkt gestartet und hört auf den Port 3000. Sie können http://localhost:3000 übergeben, um auf die Weboberfläche von Grafana zuzugreifen.

Prometheus-Datenquelle hinzufügen

Wählen Sie in der Weboberfläche von Grafana „Datenquellen konfigurieren“ (Datenquellen) und wählen Sie die Prometheus-Datenquelle aus. Definieren Sie in der Datenquellenkonfiguration die Prometheus-Adresse (http://localhost:9090) und die Abfrageparameter.
  1. Dashboard erstellen

Wählen Sie „Dashboard erstellen“ in der Weboberfläche von Grafana und wählen Sie „Panel hinzufügen“. Wählen Sie in der Konfiguration des hinzugefügten Panels die Indikatoren und Diagrammtypen aus, die angezeigt werden sollen, zum Beispiel:
  1. Verschiedene Diagramme und Dashboards können über Grafana erstellt werden, damit Entwickler Indikatorinformationen besser überwachen und analysieren können.
5. Alarm

Sobald wir eine Anomalie in der Anwendung feststellen, müssen wir rechtzeitig einen Alarm senden. Grafana bietet die Möglichkeit zur Integration mit einer Vielzahl von Alarm-Tools und kann Alarmbenachrichtigungen an Slack, E-Mail und andere Kanäle senden.

Wählen Sie in der Weboberfläche von Grafana Benachrichtigungen aus und erstellen Sie eine neue Benachrichtigung. Definieren Sie Regeln und Alarmbenachrichtigungskanäle im Alarm.

6. Fazit

In diesem Artikel wird erläutert, wie Sie mit Prometheus und Grafana Überwachung und Alarmierung im Beego-Framework implementieren. Über Prometheus kann der Laufstatus der Anwendung indiziert und die Indexänderungen in Echtzeit überwacht werden. Grafana bietet Entwicklern die Möglichkeit, Indikatorinformationen in visuellen Dashboards anzuzeigen und in eine Vielzahl von Alarmtools zu integrieren. Durch den kombinierten Einsatz dieser beiden Tools kann der Betriebsstatus von Beego-Anwendungen besser überwacht und die Zuverlässigkeit und Stabilität der Anwendungen verbessert werden.

Das obige ist der detaillierte Inhalt vonVerwendung von Prometheus und Grafana zur Implementierung von Überwachung und Alarmierung in Beego. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Verwandte Etiketten:
Quelle:php.cn
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage
Über uns Haftungsausschluss Sitemap
Chinesische PHP-Website:Online-PHP-Schulung für das Gemeinwohl,Helfen Sie PHP-Lernenden, sich schnell weiterzuentwickeln!