{"id":56206,"date":"2020-02-07T00:00:00","date_gmt":"2020-02-06T21:00:00","guid":{"rendered":"https:\/\/prohoster.info\/blog\/blog_prohoster\/loki-sbor-logov-ispolzuya-podhod-prometheus"},"modified":"2021-02-01T11:41:00","modified_gmt":"2021-02-01T09:41:00","slug":"loki-sbor-logov-ispolzuya-podhod-prometheus","status":"publish","type":"post","link":"https:\/\/prohoster.info\/de\/blog\/administrirovanie\/loki-sbor-logov-ispolzuya-podhod-prometheus","title":{"rendered":"Loki \u2013 Protokollsammlung unter Verwendung des Prometheus-Ansatzes","gt_translate_keys":[{"key":"rendered","format":"text"}]},"content":{"rendered":"<p><i>Hallo, Habr-Bewohner! Im Vorfeld des Starts eines neuen Kurses <noindex><a rel=\"nofollow\" href=\"https:\/\/otus.pw\/P37L\/\">\u201eDevOps-Praktiken und Werkzeuge\u201c<\/a><\/noindex> haben wir f\u00fcr Sie eine interessante \u00dcbersetzung vorbereitet.<\/i><\/p>\n<p>Dieser Artikel ist eine kurze Einf\u00fchrung in Loki. Das Projekt Loki <noindex><a rel=\"nofollow\" href=\"https:\/\/grafana.com\/oss\/loki\/\">wird von Grafana unterst\u00fctzt<\/a><\/noindex> und zielt darauf ab, Protokolle zentral zu sammeln (von Servern oder Containern).<\/p>\n<p>Die Hauptquelle der Inspiration f\u00fcr Loki war <noindex><a rel=\"nofollow\" href=\"http:\/\/prometheus.io\/\">Prometheus<\/a><\/noindex> mit der Idee, seine Ans\u00e4tze f\u00fcr das Log-Management anzuwenden:<\/p>\n<ul>\n<li>Verwendung von Labels zur Datenspeicherung<\/li>\n<li>geringer Ressourcenverbrauch<\/li>\n<\/ul>\n<p>Wir werden noch auf die Funktionsweisen von Prometheus zur\u00fcckkommen und einige Beispiele f\u00fcr seine Verwendung im Kontext von Kubernetes anf\u00fchren.<\/p>\n<h3>Ein paar Worte \u00fcber Prometheus<\/h3>\n<p>Um vollst\u00e4ndig zu verstehen, wie Loki funktioniert, ist es wichtig, einen Schritt zur\u00fcckzutreten und sich ein wenig an Prometheus zu erinnern.<\/p>\n<p>Eine der herausragenden Eigenschaften von Prometheus ist das Abrufen von Metriken aus den Sammlungspunkten (\u00fcber Exporteure) und deren Speicherung in einer TSDB (Time Series Data Base, Datenbank f\u00fcr Zeitreihen) mit dem Hinzuf\u00fcgen von Metadaten in Form von Labels.<noindex><a rel=\"nofollow\" name=\"habracut\"><\/a><\/noindex><\/p>\n<h3>Warum ist das notwendig?<\/h3>\n<p>In letzter Zeit hat sich Prometheus als De-facto-Standard in der Welt der Container und von Kubernetes etabliert: Die Installation ist sehr einfach, und im Kubernetes-Cluster ist standardm\u00e4\u00dfig ein Endpunkt f\u00fcr Prometheus vorhanden. Prometheus kann auch Metriken aus Anwendungen abrufen, die in Containern bereitgestellt werden, w\u00e4hrend bestimmte Labels beibehalten werden. Daher ist die \u00dcberwachung von Anwendungen sehr leicht umzusetzen.<\/p>\n<p>Leider gibt es f\u00fcr die Protokollverwaltung bisher keine \u201ePlug-and-Play\u201c-L\u00f6sung, und Sie m\u00fcssen selbst eine L\u00f6sung finden:<\/p>\n<ul>\n<li>verwalteter Cloud-Service zur Zentralisierung von Protokollen (AWS, Azure oder Google)<\/li>\n<li>\u00dcberwachungsdienst \u201eMonitoring as a Service\u201c (zum Beispiel Datadog)<\/li>\n<li>Erstellung Ihres eigenen Protokollsammlungsdienstes.<\/li>\n<\/ul>\n<p>F\u00fcr die dritte Option habe ich traditionell Elasticsearch verwendet, obwohl ich nicht immer zufrieden war (insbesondere aufgrund seiner Schwere und der schwierigen Konfiguration).<\/p>\n<p>Loki wurde entwickelt, um die Implementierung gem\u00e4\u00df den folgenden Prinzipien zu vereinfachen:<\/p>\n<ul>\n<li>einfach zu starten<\/li>\n<li>wenig Ressourcen zu konsumieren<\/li>\n<li>selbstst\u00e4ndig ohne spezielle Wartung zu arbeiten<\/li>\n<li>als Erg\u00e4nzung zu Prometheus zu dienen, um bei der Fehlersuche zu helfen<\/li>\n<\/ul>\n<p>Diese Einfachheit wird jedoch durch einige Kompromisse erreicht. Einer davon besteht darin, keinen Inhalt zu indexieren. Daher ist die Textsuche nicht besonders effizient oder umfangreich und erlaubt keine statistischen Auswertungen des Textinhalts. Da Loki jedoch das \u00c4quivalent von grep und eine Erg\u00e4nzung zu Prometheus sein m\u00f6chte, stellt dies keinen Nachteil dar.<\/p>\n<h3>Incident Investigation<\/h3>\n<p>Um besser zu verstehen, warum Loki keine Indizierung ben\u00f6tigt, lassen Sie uns auf die Methode der Vorfalluntersuchung zur\u00fcckblicken, die die Entwickler von Loki verwendet haben:<\/p>\n<p><img decoding=\"async\" alt=\"Loki \u2013 Protokollsammlung unter Verwendung des Prometheus-Ansatzes\" src=\"\/wp-content\/uploads\/2020\/02\/2f9ba72d68ccafbe44ab1700d08e3a33.jpg\" style=\"display:block;margin: 0 auto;\"><br \/>\n<i>1 Alert \u2192 2 Dashboard \u2192 3 Adhoc Query \u2192 4 Log Aggregation \u2192 5 Distributed Tracing \u2192 6 Fix!<br \/>\n(1 Benachrichtigung \u2192 2 Dashboard \u2192 3 Adhoc-Abfrage \u2192 4 Protokollaggregation \u2192 5 Verteilte Nachverfolgung \u2192 6 Behebung!)<\/i><\/p>\n<p>Die Idee ist, dass wir eine Art Alert (Slack-Benachrichtigung, SMS usw.) erhalten und dann:<\/p>\n<ul>\n<li>die Grafana-Dashboards \u00fcberpr\u00fcfen<\/li>\n<li>die Metriken der Dienste ansehen (z. B. in Prometheus)<\/li>\n<li>die Protokolle einsehen (z. B. in Elasticsearch)<\/li>\n<li>m\u00f6glicherweise einen Blick auf die verteilten Traces werfen (Jaeger, Zipkin usw.)<\/li>\n<li>und schlie\u00dflich das urspr\u00fcngliche Problem beheben.<\/li>\n<\/ul>\n<p>Hier, im Fall des Stacks Grafana + Prometheus + Elasticsearch + Zipkin, wird es erforderlich sein, vier verschiedene Werkzeuge zu verwenden. Um die Zeit zu verk\u00fcrzen, w\u00e4re es sinnvoll, alle Schritte mit einem einzigen Werkzeug, Grafana, durchf\u00fchren zu k\u00f6nnen. Es ist erw\u00e4hnenswert, dass ein solcher Ansatz zur Datenanalyse in Grafana seit Version 6 umgesetzt ist. Somit ist es m\u00f6glich, direkt auf die Prometheus-Daten aus Grafana zuzugreifen.<\/p>\n<p><img decoding=\"async\" alt=\"Loki \u2013 Protokollsammlung unter Verwendung des Prometheus-Ansatzes\" src=\"\/wp-content\/uploads\/2020\/02\/eefc5a599a23abeb0624f4e3265a31e6.jpg\" style=\"display:block;margin: 0 auto;\"><br \/>\n<i>Der Explorer-Bildschirm ist zwischen Prometheus und Loki aufgeteilt.<\/i><\/p>\n<p>Auf diesem Bildschirm k\u00f6nnen Protokolle in Loki, die mit den Metriken von Prometheus verbunden sind, im Splitscreen-Modus angezeigt werden. Seit Version 6.5 erm\u00f6glicht Grafana die Verarbeitung der Trace-ID in den Loki-Logeintr\u00e4gen, um Links zu Ihren bevorzugten Werkzeugen f\u00fcr die verteilte Nachverfolgung (Jaeger) zu erstellen.<\/p>\n<h3>Lokaler Loki-Test<\/h3>\n<p>Der einfachste Weg, Loki lokal zu testen, besteht darin, docker-compose zu verwenden. Die docker-compose-Datei befindet sich im Loki-Repository. Sie k\u00f6nnen das Repository mit dem folgenden Befehl abrufen: <code>git<\/code>:<\/p>\n<pre><code class=\"go\">$ git clone https:\/\/github.com\/grafana\/loki.git<\/code><\/pre>\n<p>Dann m\u00fcssen Sie in das Produktionsverzeichnis wechseln:<\/p>\n<pre><code class=\"go\">$ cd production<\/code><\/pre>\n<p>Anschlie\u00dfend k\u00f6nnen Sie die neueste Version der Docker-Images abrufen:<\/p>\n<pre><code class=\"go\">$ docker-compose pull<\/code><\/pre>\n<p>Schlie\u00dflich wird Loki mit folgendem Befehl gestartet:<\/p>\n<pre><code class=\"go\">$ docker-compose up<\/code><\/pre>\n<h3>Architektur von Loki<\/h3>\n<p>Hier ist ein kleines Diagramm zur Architektur von Loki:<\/p>\n<p><img decoding=\"async\" alt=\"Loki \u2013 Protokollsammlung unter Verwendung des Prometheus-Ansatzes\" src=\"\/wp-content\/uploads\/2020\/02\/fc5703bcebc1391e719640e99544f909.jpg\" style=\"display:block;margin: 0 auto;\"><br \/>\n<i>Prinzipien der Architektur von Loki<\/i><\/p>\n<p>Der Web-Client startet Anwendungen auf dem Server, Promtail sammelt Protokolle und sendet sie an Loki, der Web-Client sendet auch Metadaten an Loki. Loki aggregiert alles und \u00fcbertr\u00e4gt es an Grafana.<br \/>\nLoki ist gestartet. Um die verf\u00fcgbaren Komponenten anzuzeigen, f\u00fchren Sie den folgenden Befehl aus:<\/p>\n<pre><code class=\"go\">$ docker ps<\/code><\/pre>\n<p>Im Falle einer neu installierten Docker-Umgebung sollte der Befehl folgendes Ergebnis zur\u00fcckgeben:<\/p>\n<pre><code class=\"go\">IMAGE               PORTS                  NAMES\ngrafana\/promtail:                          production_promtail_1\ngrafana\/grafana: m  0.0.0.0:3000-&gt;3000\/tcp production_grafana_1\ngrafana\/loki: late  80\/tcp,0.0.0.0:3100... production_loki_1<\/code><\/pre>\n<p>Wir sehen folgende Komponenten:<\/p>\n<ul>\n<li>Promtail: Agent, verantwortlich f\u00fcr die Zentralisierung von Protokollen<\/li>\n<li>Grafana: bekanntes Tool f\u00fcr Dashboards<\/li>\n<li>Loki: Daemon zur Zentralisierung von Daten<\/li>\n<\/ul>\n<p>Im Rahmen einer klassischen Infrastruktur (z. B. auf virtuellen Maschinen) muss auf jeder Maschine der Promtail-Agent installiert sein. Grafana und Loki k\u00f6nnen auf einer Maschine installiert werden.<\/p>\n<h3>Deployment in Kubernetes<\/h3>\n<p>Die Installation der Loki-Komponenten in Kubernetes beinhaltet folgendes:<\/p>\n<ul>\n<li>daemonSet zur Bereitstellung des Promtail-Agenten auf jeder Maschine im Server-Cluster<\/li>\n<li>Bereitstellung (Deployment) von Loki<\/li>\n<li>und schlie\u00dflich \u2014 Bereitstellung von Grafana.<\/li>\n<\/ul>\n<p>Gl\u00fccklicherweise ist Loki als Helm-Paket verf\u00fcgbar, was die Bereitstellung erleichtert.<\/p>\n<h3>Installation \u00fcber Helm<\/h3>\n<p>Helm sollte bereits auf Ihrem System installiert sein. Sie k\u00f6nnen es aus dem GitHub-Repository des Projekts herunterladen. Die Installation erfolgt durch Entpacken des entsprechenden Archivs f\u00fcr Ihre Architektur und Hinzuf\u00fcgen von Helm zu <code>$PATH<\/code>.<\/p>\n<blockquote><p><i><b>Hinweis:<\/b> Die Version 3.0.0 von Helm wurde k\u00fcrzlich ver\u00f6ffentlicht. Da es viele \u00c4nderungen gab, wird den Lesern empfohlen, etwas zu warten, bevor sie es verwenden.<\/i>.<\/p><\/blockquote>\n<h3>Hinzuf\u00fcgen einer Quelle f\u00fcr Helm<\/h3>\n<p>Der erste Schritt besteht darin, das \u201cloki\u201d-Repository mit dem folgenden Befehl hinzuzuf\u00fcgen:<\/p>\n<pre><code class=\"go\">$ helm add loki https:\/\/grafana.github.io\/loki\/charts<\/code><\/pre>\n<p>Nach diesem Schritt k\u00f6nnen Sie nach Paketen mit dem Namen \u201cloki\u201d suchen:<\/p>\n<pre><code class=\"go\">$ helm search loki<\/code><\/pre>\n<p>Das Ergebnis:<\/p>\n<pre><code class=\"go\">loki\/loki       0.17.2 v0.4.0 Loki: wie Prometheus, aber f\u00fcr Logs.\nloki\/loki-stack 0.19.1 v0.4.0 Loki: wie Prometheus, aber f\u00fcr Logs.\nloki\/fluent-bit 0.0.2  v0.0.1 Verwendet das fluent-bit Loki Go-Plugin f\u00fcr...\nloki\/promtail   0.13.1 v0.4.0 Verantwortlich f\u00fcr das Sammeln von Logs und...<\/code><\/pre>\n<p>Diese Pakete haben folgende Funktionen:<\/p>\n<ul>\n<li>Paket <b>loki\/loki<\/b> entspricht nur dem Loki-Server<\/li>\n<li>Paket <b>loki\/fluent-bit<\/b> erm\u00f6glicht Ihnen die Bereitstellung eines DaemonSets mit fluent-bit zum Sammeln von Logs anstelle von Promtail<\/li>\n<li>Paket <b>loki\/promtail<\/b> enth\u00e4lt den Log-Datei-Sammlungsagenten<\/li>\n<li>Paket <b>loki\/loki-stack<\/b>, erm\u00f6glicht es, Loki zusammen mit Promtail bereitzustellen.<\/li>\n<\/ul>\n<h3>Loki installieren<\/h3>\n<p>Um Loki in Kubernetes bereitzustellen, f\u00fchren Sie den folgenden Befehl im Namensraum \u201emonitoring\u201c aus:<\/p>\n<pre><code class=\"go\">$ helm upgrade --install loki loki\/loki-stack --namespace monitoring<\/code><\/pre>\n<p>Um die Speicherung auf der Festplatte zu aktivieren, f\u00fcgen Sie das Argument hinzu <code>--set loki.persistence.enabled=true:<\/code><\/p>\n<pre><code class=\"go\">$ helm upgrade --install loki loki\/loki-stack \n              --namespace monitoring \n              --set loki.persistence.enabled=true<\/code><\/pre>\n<blockquote><p><i><b>Hinweis:<\/b> Wenn Sie Grafana gleichzeitig bereitstellen m\u00f6chten, f\u00fcgen Sie das Argument hinzu <code>--set grafana.enabled=true<\/code><\/i><\/p><\/blockquote>\n<p>Wenn Sie diesen Befehl ausf\u00fchren, sollten Sie folgende Ausgabe erhalten:<\/p>\n<pre><code class=\"go\">LETZTE BEREITSTELLUNG: Di, 19. Nov 2019 15:56:54\nNAMESPACE: monitoring\nSTATUS: BEREITGESTELLT\nRESSOURCEN:\n==&amp;gt; v1\/ClusterRole\nNAME ALTER\nloki-promtail-clusterrole 189d\n&hellip;\nHINWEISE:\nDer Loki-Stack wurde in Ihrem Cluster bereitgestellt. Loki kann jetzt als Datenquelle in Grafana hinzugef&uuml;gt werden.\nSiehe &lt;a href=&quot;http:\/\/docs.grafana.org\/features\/datasources\/loki\/&quot;&gt;http:\/\/docs.grafana.org\/features\/datasources\/loki\/&lt;\/a&gt; f&uuml;r weitere Details.<\/code><\/pre>\n<p>Schauen wir uns den Status der Pods im Namensraum \u201emonitoring\u201c an, sehen wir, dass alles bereitgestellt ist:<\/p>\n<pre><code class=\"go\">$ kubectl -n monitoring get pods -l release=loki<\/code><\/pre>\n<p>Das Ergebnis:<\/p>\n<pre><code class=\"go\">NAME                   READY  STATUS   RESTARTS  AGE\nloki-0                 1\/1    Running  0         147m\nloki-promtail-9zjvc    1\/1    Running  0         3h25m\nloki-promtail-f6brf    1\/1    Running  0         11h\nloki-promtail-hdcj7    1\/1    Running  0         3h23m\nloki-promtail-jbqhc    1\/1    Running  0         11h\nloki-promtail-mj642    1\/1    Running  0         62m\nloki-promtail-nm64g    1\/1    Running  0         24m<\/code><\/pre>\n<p>Alle Pods laufen. Jetzt ist es an der Zeit, einige Tests durchzuf\u00fchren!<\/p>\n<h3>Verbindung zu Grafana<\/h3>\n<p>Um sich mit Grafana unter Kubernetes zu verbinden, m\u00fcssen Sie einen Tunnel zu seinem Pod \u00f6ffnen. Unten steht der Befehl zum \u00d6ffnen des Ports 3000 f\u00fcr den Grafana-Pod:<\/p>\n<pre><code class=\"go\">$ kubectl -n port-forward monitoring svc\/loki-grafana 3000:80<\/code><\/pre>\n<p>Ein weiterer wichtiger Punkt ist die Notwendigkeit, das Passwort des Grafana-Administrators zur\u00fcckzusetzen. Das Passwort wird im Geheimen aufbewahrt. <code>loki-grafana<\/code> im Feld <code>.data.admin-user<\/code> im base64-Format.<\/p>\n<p>Um es zur\u00fcckzusetzen, f\u00fchren Sie den folgenden Befehl aus:<\/p>\n<pre><code class=\"go\">$ kubectl -n monitoring get secret loki-grafana \n --template '{{index .data \"admin-password\" | base64decode}}'; echo<\/code><\/pre>\n<p>Verwenden Sie dieses Passwort zusammen mit dem Standard-Administratorkonto (admin).<\/p>\n<h3>Festlegung der Loki-Datenquelle in Grafana<\/h3>\n<p>Stellen Sie zun\u00e4chst sicher, dass eine Loki-Datenquelle erstellt wurde (Konfiguration \/ Datenquelle).<br \/>\nHier ein Beispiel:<\/p>\n<p><img decoding=\"async\" alt=\"Loki \u2013 Protokollsammlung unter Verwendung des Prometheus-Ansatzes\" src=\"\/wp-content\/uploads\/2020\/02\/3b670a4b1a8b4db74b1e1f525fd03129.jpg\" style=\"display:block;margin: 0 auto;\"><br \/>\n<i>Beispiel f\u00fcr die Konfiguration einer Loki-Datenquelle<\/i><\/p>\n<p>Durch Klicken auf \"Test\" k\u00f6nnen Sie die Verbindung zu Loki \u00fcberpr\u00fcfen.<\/p>\n<h3>Anfragen an Loki stellen<\/h3>\n<p>Gehen Sie nun in Grafana zum Bereich \u201eErkunden\u201c. Beim Empfang von Protokollen von Containern f\u00fcgt Loki Metadaten aus Kubernetes hinzu. So wird es m\u00f6glich, die Protokolle eines bestimmten Containers zu betrachten.<\/p>\n<p>Zum Beispiel kann der folgende Befehl verwendet werden, um die Protokolle des Containers promtail auszuw\u00e4hlen: <code>{container_name = \"promtail\"}<\/code>.<br \/>\nVergessen Sie hier auch nicht, die Datenquelle Loki auszuw\u00e4hlen.<\/p>\n<p>Diese Anfrage gibt die Aktivit\u00e4ten der Container in folgendem Format zur\u00fcck:<\/p>\n<p><img decoding=\"async\" alt=\"Loki \u2013 Protokollsammlung unter Verwendung des Prometheus-Ansatzes\" src=\"\/wp-content\/uploads\/2020\/02\/ed2baebd374b9a6242cfc397776fa65f.jpg\" style=\"display:block;margin: 0 auto;\"><br \/>\n<i>Abfrageergebnis in Grafana <\/i><\/p>\n<h3>Hinzuf\u00fcgen zum Dashboard<\/h3>\n<p>Mit Grafana 6.4 k\u00f6nnen Sie Protokollinformationen direkt im Dashboard anzeigen. Dadurch kann der Benutzer schnell zwischen der Anzahl der Anfragen auf seiner Website und den Anwendungstraces wechseln.<\/p>\n<p>Hier ist ein Beispiel-Dashboard, das diese Interaktion umsetzt:<\/p>\n<p><img decoding=\"async\" alt=\"Loki \u2013 Protokollsammlung unter Verwendung des Prometheus-Ansatzes\" src=\"\/wp-content\/uploads\/2020\/02\/d76c5345d543579eb3768fcdb0a2567b.jpg\" style=\"display:block;margin: 0 auto;\"><br \/>\n<i>Beispiel eines Dashboards mit Prometheus-Metriken und Loki-Logs<\/i><\/p>\n<h3>Die Zukunft von Loki<\/h3>\n<p>Ich begann, Loki im Mai\/Juni mit Version 0.1 zu verwenden. Heute ist bereits Version 1, sogar 1.1 und 1.2 ver\u00f6ffentlicht worden.<\/p>\n<p>Es muss anerkannt werden, dass Version 0.1 nicht stabil genug war. Aber 0.3 zeigte bereits echte Anzeichen von Reife, und die folgenden Versionen (0.4, dann 1.0) verst\u00e4rkten diesen Eindruck nur noch.<\/p>\n<p>Nach 1.0.0 gibt es keine Entschuldigung mehr, dieses gro\u00dfartige Tool nicht zu verwenden.<\/p>\n<p>Zuk\u00fcnftige Verbesserungen sollten sich nicht auf Loki, sondern vielmehr auf die Integration mit dem hervorragenden Grafana konzentrieren. Tats\u00e4chlich gibt es in Grafana 6.4 bereits eine gute Integration f\u00fcr Dashboards.<\/p>\n<p>Grafana 6.5, das k\u00fcrzlich ver\u00f6ffentlicht wurde, verbessert diese Integration noch weiter, indem es den Inhalt der Logs im JSON-Format automatisch erkennt.<\/p>\n<p>Im folgenden Video sehen Sie ein kleines Beispiel dieses Mechanismus:<\/p>\n<p><img decoding=\"async\" alt=\"Loki \u2013 Protokollsammlung unter Verwendung des Prometheus-Ansatzes\" src=\"\/wp-content\/uploads\/2020\/02\/1e0a5269f21e401f349a35788672aec1.jpg\" style=\"display:block;margin: 0 auto;\"><br \/>\n<i>Anzeige von Loki-Strings in Grafana<\/i><\/p>\n<p>Es wird m\u00f6glich, eines der JSON-Felder zu verwenden, z. B. f\u00fcr:<\/p>\n<ul>\n<li>Links zu einem externen Tool<\/li>\n<li>Filtern von Protokollinhalten<\/li>\n<\/ul>\n<p>Sie k\u00f6nnen beispielsweise auf traceId klicken, um zu Zipkin oder Jaeger zu gelangen.<\/p>\n<p>Traditionell erwarten wir Ihre Kommentare und laden Sie ein zu <noindex><a rel=\"nofollow\" href=\"https:\/\/otus.pw\/P37L\/\">einem offenen Webinar<\/a><\/noindex>, in dem wir dar\u00fcber sprechen, wie sich die DevOps-Branche im Jahr 2019 entwickelt hat und m\u00f6gliche Entwicklungswege f\u00fcr 2020 diskutieren.<\/p>\n<p>Quelle: <a content=\"nofollow\" rel=\"nofollow\" href=\"https:\/\/habr.com\/ru\/company\/otus\/blog\/487118\/\">habr.com<\/a><\/p>","protected":false,"gt_translate_keys":[{"key":"rendered","format":"html"}]},"excerpt":{"rendered":"<p>\u0421\u0430\u043b\u044e\u0442, \u0445\u0430\u0431\u0440\u043e\u0432\u0447\u0430\u043d\u0435! \u0412 \u043f\u0440\u0435\u0434\u0434\u0432\u0435\u0440\u0438\u0438 \u0441\u0442\u0430\u0440\u0442\u0430 \u043d\u043e\u0432\u043e\u0433\u043e \u043d\u0430\u0431\u043e\u0440\u0430 \u043d\u0430 \u043a\u0443\u0440\u0441 \u00abDevOps \u043f\u0440\u0430\u043a\u0442\u0438\u043a\u0438 \u0438 \u0438\u043d\u0441\u0442\u0440\u0443\u043c\u0435\u043d\u0442\u044b\u00bb \u043f\u043e\u0434\u0433\u043e\u0442\u043e\u0432\u0438\u043b\u0438 \u0434\u043b\u044f \u0432\u0430\u0441 \u043f\u0435\u0440\u0435\u0432\u043e\u0434 \u0438\u043d\u0442\u0435\u0440\u0435\u0441\u043d\u043e\u0433\u043e \u043c\u0430\u0442\u0435\u0440\u0438\u0430\u043b\u0430. \u042d\u0442\u0430 \u0441\u0442\u0430\u0442\u044c\u044f \u2014 \u043a\u0440\u0430\u0442\u043a\u043e\u0435 \u0432\u0432\u0435\u0434\u0435\u043d\u0438\u0435 \u0432 Loki. \u041f\u0440\u043e\u0435\u043a\u0442 Loki \u043f\u043e\u0434\u0434\u0435\u0440\u0436\u0438\u0432\u0430\u0435\u0442\u0441\u044f Grafana \u0438 \u043d\u0430\u043f\u0440\u0430\u0432\u043b\u0435\u043d \u043d\u0430 \u0446\u0435\u043d\u0442\u0440\u0430\u043b\u0438\u0437\u043e\u0432\u0430\u043d\u043d\u044b\u0439 \u0441\u0431\u043e\u0440 \u043b\u043e\u0433\u043e\u0432 (\u0441 \u0441\u0435\u0440\u0432\u0435\u0440\u043e\u0432 \u0438\u043b\u0438 \u043a\u043e\u043d\u0442\u0435\u0439\u043d\u0435\u0440\u043e\u0432). \u041e\u0441\u043d\u043e\u0432\u043d\u044b\u043c \u0438\u0441\u0442\u043e\u0447\u043d\u0438\u043a\u043e\u043c \u0432\u0434\u043e\u0445\u043d\u043e\u0432\u0435\u043d\u0438\u044f \u0434\u043b\u044f Loki \u0431\u044b\u043b Prometheus \u0441 \u0438\u0434\u0435\u0435\u0439 \u043f\u0440\u0438\u043c\u0435\u043d\u0435\u043d\u0438\u044f \u0435\u0433\u043e \u043f\u043e\u0434\u0445\u043e\u0434\u043e\u0432 \u043a \u0443\u043f\u0440\u0430\u0432\u043b\u0435\u043d\u0438\u044e \u043b\u043e\u0433\u0430\u043c\u0438: [&hellip;]<\/p>\n","protected":false,"gt_translate_keys":[{"key":"rendered","format":"html"}]},"author":1,"featured_media":0,"comment_status":"closed","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[688],"tags":[],"class_list":["post-56206","post","type-post","status-publish","format-standard","hentry","category-administrirovanie"],"aioseo_notices":[],"aioseo_head":"\n\t\t<!-- All in One SEO 4.9.10 - aioseo.com -->\n\t<meta name=\"description\" content=\"\u0421\u0430\u043b\u044e\u0442, \u0445\u0430\u0431\u0440\u043e\u0432\u0447\u0430\u043d\u0435! \u0412 \u043f\u0440\u0435\u0434\u0434\u0432\u0435\u0440\u0438\u0438 \u0441\u0442\u0430\u0440\u0442\u0430 \u043d\u043e\u0432\u043e\u0433\u043e \u043d\u0430\u0431\u043e\u0440\u0430 \u043d\u0430 \u043a\u0443\u0440\u0441 \u00abDevOps \u043f\u0440\u0430\u043a\u0442\u0438\u043a\u0438 \u0438 \u0438\u043d\u0441\u0442\u0440\u0443\u043c\u0435\u043d\u0442\u044b\u00bb \u043f\u043e\u0434\u0433\u043e\u0442\u043e\u0432\u0438\u043b\u0438 \u0434\u043b\u044f \u0432\u0430\u0441 \u043f\u0435\u0440\u0435\u0432\u043e\u0434 \u0438\u043d\u0442\u0435\u0440\u0435\u0441\u043d\u043e\u0433\u043e \u043c\u0430\u0442\u0435\u0440\u0438\u0430\u043b\u0430. \u042d\u0442\u0430 \u0441\u0442\u0430\u0442\u044c\u044f \u2014 \u043a\u0440\u0430\u0442\u043a\u043e\u0435 \u0432\u0432\u0435\u0434\u0435\u043d\u0438\u0435 \u0432 Loki. \u041f\u0440\u043e\u0435\u043a\u0442 Loki \u043f\u043e\u0434\u0434\u0435\u0440\u0436\u0438\u0432\u0430\u0435\u0442\u0441\u044f Grafana \u0438 \u043d\u0430\u043f\u0440\u0430\u0432\u043b\u0435\u043d \u043d\u0430 \u0446\u0435\u043d\u0442\u0440\u0430\u043b\u0438\u0437\u043e\u0432\u0430\u043d\u043d\u044b\u0439 \u0441\u0431\u043e\u0440 \u043b\u043e\u0433\u043e\u0432 (\u0441 \u0441\u0435\u0440\u0432\u0435\u0440\u043e\u0432 \u0438\u043b\u0438 \u043a\u043e\u043d\u0442\u0435\u0439\u043d\u0435\u0440\u043e\u0432). \u041e\u0441\u043d\u043e\u0432\u043d\u044b\u043c \u0438\u0441\u0442\u043e\u0447\u043d\u0438\u043a\u043e\u043c \u0432\u0434\u043e\u0445\u043d\u043e\u0432\u0435\u043d\u0438\u044f \u0434\u043b\u044f Loki \u0431\u044b\u043b Prometheus \u0441 \u0438\u0434\u0435\u0435\u0439 \u043f\u0440\u0438\u043c\u0435\u043d\u0435\u043d\u0438\u044f \u0435\u0433\u043e \u043f\u043e\u0434\u0445\u043e\u0434\u043e\u0432 \u043a \u0443\u043f\u0440\u0430\u0432\u043b\u0435\u043d\u0438\u044e \u043b\u043e\u0433\u0430\u043c\u0438:\" \/>\n\t<meta name=\"robots\" content=\"max-image-preview:large\" \/>\n\t<meta name=\"author\" content=\"Yuri Gagarin\"\/>\n\t<link rel=\"canonical\" href=\"https:\/\/prohoster.info\/de\/blog\/administrirovanie\/loki-sbor-logov-ispolzuya-podhod-prometheus\" \/>\n\t<meta name=\"generator\" content=\"All in One SEO (AIOSEO) 4.9.10\" \/>\n\t\t<meta property=\"og:locale\" content=\"de_DE\" \/>\n\t\t<meta property=\"og:site_name\" content=\"ProHoster | \u041a\u0443\u043f\u0438\u0442\u044c \u043d\u0430\u0434\u0435\u0436\u043d\u044b\u0439 \u0445\u043e\u0441\u0442\u0438\u043d\u0433 \u0434\u043b\u044f \u0441\u0430\u0439\u0442\u043e\u0432 \u0441 \u0437\u0430\u0449\u0438\u0442\u043e\u0439 \u043e\u0442 DDoS, VPS VDS \u0441\u0435\u0440\u0432\u0435\u0440\u044b\" \/>\n\t\t<meta property=\"og:type\" content=\"article\" \/>\n\t\t<meta property=\"og:title\" content=\"\ud83e\udd47Loki \u2014 \u0441\u0431\u043e\u0440 \u043b\u043e\u0433\u043e\u0432, \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u0443\u044f \u043f\u043e\u0434\u0445\u043e\u0434 Prometheus | ProHoster\" \/>\n\t\t<meta property=\"og:description\" content=\"\u0421\u0430\u043b\u044e\u0442, \u0445\u0430\u0431\u0440\u043e\u0432\u0447\u0430\u043d\u0435! \u0412 \u043f\u0440\u0435\u0434\u0434\u0432\u0435\u0440\u0438\u0438 \u0441\u0442\u0430\u0440\u0442\u0430 \u043d\u043e\u0432\u043e\u0433\u043e \u043d\u0430\u0431\u043e\u0440\u0430 \u043d\u0430 \u043a\u0443\u0440\u0441 \u00abDevOps \u043f\u0440\u0430\u043a\u0442\u0438\u043a\u0438 \u0438 \u0438\u043d\u0441\u0442\u0440\u0443\u043c\u0435\u043d\u0442\u044b\u00bb \u043f\u043e\u0434\u0433\u043e\u0442\u043e\u0432\u0438\u043b\u0438 \u0434\u043b\u044f \u0432\u0430\u0441 \u043f\u0435\u0440\u0435\u0432\u043e\u0434 \u0438\u043d\u0442\u0435\u0440\u0435\u0441\u043d\u043e\u0433\u043e \u043c\u0430\u0442\u0435\u0440\u0438\u0430\u043b\u0430. \u042d\u0442\u0430 \u0441\u0442\u0430\u0442\u044c\u044f \u2014 \u043a\u0440\u0430\u0442\u043a\u043e\u0435 \u0432\u0432\u0435\u0434\u0435\u043d\u0438\u0435 \u0432 Loki. \u041f\u0440\u043e\u0435\u043a\u0442 Loki \u043f\u043e\u0434\u0434\u0435\u0440\u0436\u0438\u0432\u0430\u0435\u0442\u0441\u044f Grafana \u0438 \u043d\u0430\u043f\u0440\u0430\u0432\u043b\u0435\u043d \u043d\u0430 \u0446\u0435\u043d\u0442\u0440\u0430\u043b\u0438\u0437\u043e\u0432\u0430\u043d\u043d\u044b\u0439 \u0441\u0431\u043e\u0440 \u043b\u043e\u0433\u043e\u0432 (\u0441 \u0441\u0435\u0440\u0432\u0435\u0440\u043e\u0432 \u0438\u043b\u0438 \u043a\u043e\u043d\u0442\u0435\u0439\u043d\u0435\u0440\u043e\u0432). \u041e\u0441\u043d\u043e\u0432\u043d\u044b\u043c \u0438\u0441\u0442\u043e\u0447\u043d\u0438\u043a\u043e\u043c \u0432\u0434\u043e\u0445\u043d\u043e\u0432\u0435\u043d\u0438\u044f \u0434\u043b\u044f Loki \u0431\u044b\u043b Prometheus \u0441 \u0438\u0434\u0435\u0435\u0439 \u043f\u0440\u0438\u043c\u0435\u043d\u0435\u043d\u0438\u044f \u0435\u0433\u043e \u043f\u043e\u0434\u0445\u043e\u0434\u043e\u0432 \u043a \u0443\u043f\u0440\u0430\u0432\u043b\u0435\u043d\u0438\u044e \u043b\u043e\u0433\u0430\u043c\u0438:\" \/>\n\t\t<meta property=\"og:url\" content=\"https:\/\/prohoster.info\/de\/blog\/administrirovanie\/loki-sbor-logov-ispolzuya-podhod-prometheus\" \/>\n\t\t<meta property=\"og:image\" content=\"https:\/\/prohoster.info\/wp-content\/uploads\/2021\/11\/logo-350.jpg\" \/>\n\t\t<meta property=\"og:image:secure_url\" content=\"https:\/\/prohoster.info\/wp-content\/uploads\/2021\/11\/logo-350.jpg\" \/>\n\t\t<meta property=\"og:image:width\" content=\"350\" \/>\n\t\t<meta property=\"og:image:height\" content=\"350\" \/>\n\t\t<meta property=\"article:published_time\" content=\"2020-02-06T21:00:00+00:00\" \/>\n\t\t<meta property=\"article:modified_time\" content=\"2021-02-01T09:41:00+00:00\" \/>\n\t\t<meta property=\"article:publisher\" content=\"https:\/\/www.facebook.com\/prohoster\" \/>\n\t\t<meta property=\"article:author\" content=\"https:\/\/www.facebook.com\/prohoster\" \/>\n\t\t<!-- All in One SEO -->\n\n","aioseo_head_json":{"title":"\ud83e\udd47Loki \u2013 Protokolle sammeln mit dem Prometheus-Ansatz | ProHoster","description":"Hallo, Habr-Bewohner! Im Vorfeld des neuen Kurses \u201eDevOps Praktiken und Werkzeuge\u201c haben wir f\u00fcr Sie eine interessante \u00dcbersetzung vorbereitet. Dieser Artikel ist eine kurze Einf\u00fchrung in Loki. Das Projekt Loki wird von Grafana unterst\u00fctzt und zielt auf die zentrale Sammlung von Protokollen (von Servern oder Containern) ab. Die Hauptinspiriation f\u00fcr Loki war Prometheus mit der Idee, dessen Ans\u00e4tze zur Protokollverwaltung zu \u00fcbernehmen:","canonical_url":"https:\/\/prohoster.info\/de\/blog\/administrirovanie\/loki-sbor-logov-ispolzuya-podhod-prometheus","robots":"max-image-preview:large","keywords":"","webmasterTools":{"miscellaneous":""},"schema":null,"og:locale":"de_DE","og:site_name":"ProHoster | \u041a\u0443\u043f\u0438\u0442\u044c \u043d\u0430\u0434\u0435\u0436\u043d\u044b\u0439 \u0445\u043e\u0441\u0442\u0438\u043d\u0433 \u0434\u043b\u044f \u0441\u0430\u0439\u0442\u043e\u0432 \u0441 \u0437\u0430\u0449\u0438\u0442\u043e\u0439 \u043e\u0442 DDoS, VPS VDS \u0441\u0435\u0440\u0432\u0435\u0440\u044b","og:type":"article","og:title":"\ud83e\udd47Loki \u2014 \u0441\u0431\u043e\u0440 \u043b\u043e\u0433\u043e\u0432, \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u0443\u044f \u043f\u043e\u0434\u0445\u043e\u0434 Prometheus | ProHoster","og:description":"\u0421\u0430\u043b\u044e\u0442, \u0445\u0430\u0431\u0440\u043e\u0432\u0447\u0430\u043d\u0435! \u0412 \u043f\u0440\u0435\u0434\u0434\u0432\u0435\u0440\u0438\u0438 \u0441\u0442\u0430\u0440\u0442\u0430 \u043d\u043e\u0432\u043e\u0433\u043e \u043d\u0430\u0431\u043e\u0440\u0430 \u043d\u0430 \u043a\u0443\u0440\u0441 \u00abDevOps \u043f\u0440\u0430\u043a\u0442\u0438\u043a\u0438 \u0438 \u0438\u043d\u0441\u0442\u0440\u0443\u043c\u0435\u043d\u0442\u044b\u00bb \u043f\u043e\u0434\u0433\u043e\u0442\u043e\u0432\u0438\u043b\u0438 \u0434\u043b\u044f \u0432\u0430\u0441 \u043f\u0435\u0440\u0435\u0432\u043e\u0434 \u0438\u043d\u0442\u0435\u0440\u0435\u0441\u043d\u043e\u0433\u043e \u043c\u0430\u0442\u0435\u0440\u0438\u0430\u043b\u0430. \u042d\u0442\u0430 \u0441\u0442\u0430\u0442\u044c\u044f \u2014 \u043a\u0440\u0430\u0442\u043a\u043e\u0435 \u0432\u0432\u0435\u0434\u0435\u043d\u0438\u0435 \u0432 Loki. \u041f\u0440\u043e\u0435\u043a\u0442 Loki \u043f\u043e\u0434\u0434\u0435\u0440\u0436\u0438\u0432\u0430\u0435\u0442\u0441\u044f Grafana \u0438 \u043d\u0430\u043f\u0440\u0430\u0432\u043b\u0435\u043d \u043d\u0430 \u0446\u0435\u043d\u0442\u0440\u0430\u043b\u0438\u0437\u043e\u0432\u0430\u043d\u043d\u044b\u0439 \u0441\u0431\u043e\u0440 \u043b\u043e\u0433\u043e\u0432 (\u0441 \u0441\u0435\u0440\u0432\u0435\u0440\u043e\u0432 \u0438\u043b\u0438 \u043a\u043e\u043d\u0442\u0435\u0439\u043d\u0435\u0440\u043e\u0432). \u041e\u0441\u043d\u043e\u0432\u043d\u044b\u043c \u0438\u0441\u0442\u043e\u0447\u043d\u0438\u043a\u043e\u043c \u0432\u0434\u043e\u0445\u043d\u043e\u0432\u0435\u043d\u0438\u044f \u0434\u043b\u044f Loki \u0431\u044b\u043b Prometheus \u0441 \u0438\u0434\u0435\u0435\u0439 \u043f\u0440\u0438\u043c\u0435\u043d\u0435\u043d\u0438\u044f \u0435\u0433\u043e \u043f\u043e\u0434\u0445\u043e\u0434\u043e\u0432 \u043a \u0443\u043f\u0440\u0430\u0432\u043b\u0435\u043d\u0438\u044e \u043b\u043e\u0433\u0430\u043c\u0438:","og:url":"https:\/\/prohoster.info\/de\/blog\/administrirovanie\/loki-sbor-logov-ispolzuya-podhod-prometheus","og:image":"https:\/\/prohoster.info\/wp-content\/uploads\/2021\/11\/logo-350.jpg","og:image:secure_url":"https:\/\/prohoster.info\/wp-content\/uploads\/2021\/11\/logo-350.jpg","og:image:width":350,"og:image:height":350,"article:published_time":"2020-02-06T21:00:00+00:00","article:modified_time":"2021-02-01T09:41:00+00:00","article:publisher":"https:\/\/www.facebook.com\/prohoster","article:author":"https:\/\/www.facebook.com\/prohoster"},"aioseo_meta_data":{"post_id":"56206","title":null,"description":"","keywords":"","keyphrases":null,"primary_term":null,"canonical_url":"","og_title":null,"og_description":null,"og_object_type":"default","og_image_type":"default","og_image_url":null,"og_image_width":null,"og_image_height":null,"og_image_custom_url":null,"og_image_custom_fields":null,"og_video":null,"og_custom_url":null,"og_article_section":null,"og_article_tags":null,"twitter_use_og":false,"twitter_card":"default","twitter_image_type":"default","twitter_image_url":null,"twitter_image_custom_url":null,"twitter_image_custom_fields":null,"twitter_title":null,"twitter_description":null,"schema":{"blockGraphs":[],"customGraphs":[],"default":{"data":{"Article":[],"Course":[],"Dataset":[],"FAQPage":[],"Movie":[],"Person":[],"Product":[],"ProductReview":[],"Car":[],"Recipe":[],"Service":[],"SoftwareApplication":[],"WebPage":[]},"graphName":"","isEnabled":true},"graphs":[]},"schema_type":null,"schema_type_options":null,"pillar_content":false,"robots_default":true,"robots_noindex":false,"robots_noarchive":false,"robots_nosnippet":false,"robots_nofollow":false,"robots_noimageindex":false,"robots_noodp":false,"robots_notranslate":false,"robots_max_snippet":null,"robots_max_videopreview":null,"robots_max_imagepreview":"large","priority":null,"frequency":null,"local_seo":null,"seo_analyzer_scan_date":null,"breadcrumb_settings":null,"limit_modified_date":false,"reviewed_by":null,"ai":null,"created":"2021-02-28 19:29:18","updated":"2022-09-28 02:03:48"},"gt_translate_keys":[{"key":"link","format":"url"}],"_links":{"self":[{"href":"https:\/\/prohoster.info\/de\/wp-json\/wp\/v2\/posts\/56206","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/prohoster.info\/de\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/prohoster.info\/de\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/prohoster.info\/de\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/prohoster.info\/de\/wp-json\/wp\/v2\/comments?post=56206"}],"version-history":[{"count":0,"href":"https:\/\/prohoster.info\/de\/wp-json\/wp\/v2\/posts\/56206\/revisions"}],"wp:attachment":[{"href":"https:\/\/prohoster.info\/de\/wp-json\/wp\/v2\/media?parent=56206"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/prohoster.info\/de\/wp-json\/wp\/v2\/categories?post=56206"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/prohoster.info\/de\/wp-json\/wp\/v2\/tags?post=56206"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}