Grafana Loki ist ein Log-Aggregationstool und der Kern eines voll ausgestatteten Logging-Stacks.
Übersicht
Loki ist ein Datenspeicher, der für die effiziente Speicherung von Protokolldaten optimiert ist. Die effiziente Indizierung von Logdaten unterscheidet Loki von anderen Logging-Systemen. Im Gegensatz zu anderen Logging-Systemen wird ein Loki-Index aus Labels aufgebaut, wodurch die ursprüngliche Log-Nachricht nicht indiziert bleibt.
Loki-Funktionen
- Effiziente Speichernutzung zum Indizieren der Protokolle Durch die Indizierung auf einem Satz von Labels kann der Index erheblich kleiner sein als bei anderen Protokollaggregationsprodukten. Weniger Arbeitsspeicher macht den Betrieb kostengünstiger.
- Mandantenfähigkeit Loki ermöglicht es mehreren Mandanten, eine einzige Loki-Instanz zu verwenden. Die Daten einzelner Mandanten sind vollständig von anderen Mandanten isoliert. Die Mandantenfähigkeit wird durch die Zuweisung einer Mandanten-ID im Agent konfiguriert.
- LogQL, die Abfragesprache von Loki Benutzer der Prometheus-Abfragesprache PromQL werden LogQL als vertraut und flexibel zum Generieren von Abfragen für die Protokolle empfinden. Die Sprache erleichtert auch die Generierung von Metriken aus Protokolldaten, eine leistungsstarke Funktion, die weit über die Protokollaggregation hinausgeht.
- Skalierbarkeit Loki kann als einzelne Binärdatei ausgeführt werden; alle Komponenten laufen in einem Prozess. Loki ist auf Skalierbarkeit ausgelegt, da jede Komponente von Loki als Microservice ausgeführt werden kann. Die Konfiguration erlaubt die individuelle Skalierung der Microservices, was flexible Großinstallationen ermöglicht.
- Flexibilität Viele Agenten (Clients) haben Plugin-Unterstützung. Dadurch kann eine aktuelle Beobachtbarkeitsstruktur Loki als ihr Protokollaggregationstool hinzufügen, ohne dass bestehende Teile des Beobachtbarkeitsstapels ausgetauscht werden müssen.
- Grafana-Integration Loki lässt sich nahtlos in Grafana integrieren und bietet einen vollständigen Observability-Stack.
Grafana Loki lokal installieren und ausführen
Um Ereignisse mit Grafana Loki zu protokollieren, laden Sie Promtail und Loki herunter und installieren Sie sie.
- Loki ist die Logging-Engine.
- Promtail sendet Protokolle an Loki.
Die Konfiguration legt fest, dass Loki als einzelne Binärdatei ausgeführt wird.
Installieren
- Navigieren Sie zur Veröffentlichungsseite.
- Scrollen Sie nach unten zum Abschnitt "Assets" unter der Version, die Sie installieren möchten.
- Laden Sie die ZIP-Dateien von Loki und Promtail herunter, die Ihrem System entsprechen. Hinweis: Laden Sie zu diesem Zeitpunkt weder LogCLI noch Loki Canary herunter. Mit LogCLI können Sie Loki-Abfragen in einer Befehlszeilenschnittstelle ausführen. Loki Canary ist ein Tool zur Überprüfung der Leistung von Loki.
- Entpacken Sie den Paketinhalt in dasselbe Verzeichnis. Hier werden die beiden Programme ausgeführt.
- Wechseln Sie in der Kommandozeile das Verzeichnis (
cd
auf den meisten Systemen) in das Verzeichnis mit Loki und Promtail. Kopieren Sie die folgenden Befehle und fügen Sie sie in Ihre Befehlszeile ein, um generische Konfigurationsdateien herunterzuladen:
wget https://raw.githubusercontent.com/grafana/loki/master/cmd/loki/loki-local-config.yaml
wget https://raw.githubusercontent.com/grafana/loki/main/clients/cmd/promtail/promtail-local-config.yaml
Kopieren Sie einfach die folgenden Schritte, um Loki zu installieren
$ curl -O -L "https://github.com/grafana/loki/releases/download/v2.2.1/loki-linux-amd64.zip"
# extract the binary
$ unzip "loki-linux-amd64.zip"
# make sure it is executable
$ chmod a+x "loki-linux-amd64"
# download config file
$ wget https://raw.githubusercontent.com/grafana/loki/v2.2.1/cmd/loki/loki-local-config.yaml
Kopieren Sie einfach die folgenden Schritte, um Promtail zu installieren
$ curl -O -L "https://github.com/grafana/loki/releases/download/v2.2.1/promtail-linux-amd64.zip"
# extract the binary
$ unzip "promtail-linux-amd64.zip"
# make sure it is executable
$ chmod a+x "promtail-linux-amd64"
# download config file
$ wget https://raw.githubusercontent.com/grafana/loki/v2.2.1/cmd/promtail/promtail-local-config.yaml
Wir haben die Installation von Loki sowie Promtail abgeschlossen und auf dem lokalen Rechner gestartet. Nehmen wir einige Änderungen in Grafana vor, um die Protokolle anzuzeigen.
Visualisieren Sie die Protokolle in Grafana
sudo service grafana-server start
Sobald Grafana ausgeführt wird, klicken Sie auf Einstellungen->Datenquelle und klicken Sie dann auf Datenquelle hinzufügen und wählen Sie dann Loki aus
Sobald die Datenquelle hinzugefügt wurde, klicken Sie erneut auf Loki
Fügen Sie nun die URL als Ihren Localhost mit der Portnummer 3100 hinzu
Damit ist die Loki-Einrichtung in Grafana abgeschlossen.