{"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\/sv\/blog\/administrirovanie\/loki-sbor-logov-ispolzuya-podhod-prometheus","title":{"rendered":"Loki - loggsamling med Prometheus-ansatsen","gt_translate_keys":[{"key":"rendered","format":"text"}]},"content":{"rendered":"<p><i>Hej, Habr-l\u00e4sare! Inf\u00f6r starten av den nya kullen av kursen <noindex><a rel=\"nofollow\" href=\"https:\/\/otus.pw\/P37L\/\">\u00abDevOps metoder och verktyg\u00bb<\/a><\/noindex> har vi f\u00f6rberett en \u00f6vers\u00e4ttning av intressant material.<\/i><\/p>\n<p>Den h\u00e4r artikeln \u00e4r en kort introduktion till Loki. Projektet Loki <noindex><a rel=\"nofollow\" href=\"https:\/\/grafana.com\/oss\/loki\/\">st\u00f6ds av Grafana<\/a><\/noindex> och syftar till centraliserad insamling av loggar (fr\u00e5n servrar eller containrar).<\/p>\n<p>Den huvudsakliga inspirationsk\u00e4llan f\u00f6r Loki var <noindex><a rel=\"nofollow\" href=\"http:\/\/prometheus.io\/\">Prometheus<\/a><\/noindex> id\u00e9n att till\u00e4mpa dess logik f\u00f6r logghantering:<\/p>\n<ul>\n<li>anv\u00e4nda etiketter (labels) f\u00f6r att lagra data<\/li>\n<li>konsumera lite resurser<\/li>\n<\/ul>\n<p>Vi kommer att \u00e5terkomma till hur Prometheus fungerar och ge n\u00e5gra exempel p\u00e5 dess anv\u00e4ndning i kontexten av Kubernetes.<\/p>\n<h3>N\u00e5gra ord om Prometheus<\/h3>\n<p>F\u00f6r att fullt ut f\u00f6rst\u00e5 hur Loki fungerar \u00e4r det viktigt att ta ett steg tillbaka och t\u00e4nka p\u00e5 Prometheus.<\/p>\n<p>En av de utm\u00e4rkande egenskaperna hos Prometheus \u00e4r att den h\u00e4mtar metrik fr\u00e5n insamlingspunkter (via exporters) och lagrar dem i TSDB (Time Series Data Base, tidsserie-databas) med metadata i form av etiketter.<noindex><a rel=\"nofollow\" name=\"habracut\"><\/a><\/noindex><\/p>\n<h3>Varf\u00f6r beh\u00f6vs det?<\/h3>\n<p>P\u00e5 senare tid har Prometheus blivit de facto-standard i v\u00e4rlden av containrar och Kubernetes: installationen \u00e4r mycket enkel, och det finns fr\u00e5n b\u00f6rjan en endpoint f\u00f6r Prometheus i Kubernetes-klustret. Prometheus kan ocks\u00e5 h\u00e4mta metrik fr\u00e5n applikationer som k\u00f6rs i containrar, samtidigt som vissa etiketter sparas. D\u00e4rf\u00f6r \u00e4r \u00f6vervakning av applikationer mycket enkelt att genomf\u00f6ra.<\/p>\n<p>Tyv\u00e4rr finns det fortfarande ingen \"plug and play\"-l\u00f6sning f\u00f6r logghantering, och du m\u00e5ste hitta en l\u00f6sning f\u00f6r dig sj\u00e4lv:<\/p>\n<ul>\n<li>en hanterad molntj\u00e4nst f\u00f6r centralisering av loggar (AWS, Azure eller Google)<\/li>\n<li>en \u00f6vervakningstj\u00e4nst som \"\u00f6vervakning som en tj\u00e4nst\" (monitoring as a service) (till exempel Datadog)<\/li>\n<li>skapa din egen loggsamlartj\u00e4nst.<\/li>\n<\/ul>\n<p>F\u00f6r det tredje alternativet har jag traditionellt anv\u00e4nt Elasticsearch, \u00e4ven om jag inte alltid har varit n\u00f6jd med det (s\u00e4rskilt dess tyngd och komplexitet vid installation).<\/p>\n<p>Loki har designats f\u00f6r att f\u00f6renkla implementeringen enligt f\u00f6ljande principer:<\/p>\n<ul>\n<li>vara l\u00e4tt att starta<\/li>\n<li>konsumera lite resurser<\/li>\n<li>fungera sj\u00e4lvst\u00e4ndigt utan specialunderh\u00e5ll<\/li>\n<li>vara ett komplement till Prometheus f\u00f6r att hj\u00e4lpa till att unders\u00f6ka buggar.<\/li>\n<\/ul>\n<p>Men denna enkelhet uppn\u00e5s p\u00e5 bekostnad av vissa kompromisser. En av dem \u00e4r att inte indexera inneh\u00e5llet. D\u00e4rf\u00f6r \u00e4r textbaserad s\u00f6kning inte s\u00e4rskilt effektiv eller inneh\u00e5llsrik och till\u00e5ter inte att vi g\u00f6r statistik p\u00e5 textinneh\u00e5llet. Men eftersom Loki vill vara ekvivalent med grep och ett komplement till Prometheus \u00e4r detta ingen nackdel.<\/p>\n<h3>Incidentutredning<\/h3>\n<p>F\u00f6r att b\u00e4ttre f\u00f6rst\u00e5 varf\u00f6r Loki inte beh\u00f6ver indexing, l\u00e5t oss g\u00e5 tillbaka till metoden f\u00f6r incidentutredning som utvecklarna av Loki anv\u00e4nde:<\/p>\n<p><img decoding=\"async\" alt=\"Loki - loggsamling med Prometheus-ansatsen\" src=\"\/wp-content\/uploads\/2020\/02\/2f9ba72d68ccafbe44ab1700d08e3a33.jpg\" style=\"display:block;margin: 0 auto;\"><br \/>\n<i>1 Varning \u2192 2 Instrumentpanel \u2192 3 Adhoc Fr\u00e5ga \u2192 4 Loggaggregation \u2192 5 Distribuerad Sp\u00e5rning \u2192 6 \u00c5tg\u00e4rda!<br \/>\n(1 Varning \u2192 2 Instrumentpanel \u2192 3 Adhoc Fr\u00e5ga \u2192 4 Loggaggregation \u2192 5 Distribuerad Sp\u00e5rning \u2192 6 \u00c5tg\u00e4rdar!)<\/i><\/p>\n<p>Tanken \u00e4r att vi f\u00e5r en alert (Slack-notis, SMS osv.) och efter det:<\/p>\n<ul>\n<li>tittar p\u00e5 Grafana-instrumentpaneler<\/li>\n<li>tittar p\u00e5 tj\u00e4nsternas m\u00e4tv\u00e4rden (till exempel i Prometheus)<\/li>\n<li>tittar p\u00e5 loggar (till exempel i Elasticsearch)<\/li>\n<li>m\u00f6jligen kollar p\u00e5 distribuerade sp\u00e5rningar (Jaeger, Zipkin m.fl.)<\/li>\n<li>och slutligen \u00e5tg\u00e4rdar det ursprungliga problemet.<\/li>\n<\/ul>\n<p>H\u00e4r, i fallet med Grafana + Prometheus + Elasticsearch + Zipkin, m\u00e5ste vi anv\u00e4nda fyra olika verktyg. F\u00f6r att spara tid skulle det vara bra att kunna utf\u00f6ra alla dessa steg med hj\u00e4lp av ett enda verktyg: Grafana. Det \u00e4r v\u00e4rt att notera att detta tillv\u00e4gag\u00e5ngss\u00e4tt f\u00f6r utredning har implementerats i Grafana sedan version 6. S\u00e5ledes blir det m\u00f6jligt att komma \u00e5t Prometheus-data direkt fr\u00e5n Grafana.<\/p>\n<p><img decoding=\"async\" alt=\"Loki - loggsamling med Prometheus-ansatsen\" src=\"\/wp-content\/uploads\/2020\/02\/eefc5a599a23abeb0624f4e3265a31e6.jpg\" style=\"display:block;margin: 0 auto;\"><br \/>\n<i>Explorer-sk\u00e4rmen delas mellan Prometheus och Loki<\/i><\/p>\n<p>P\u00e5 den h\u00e4r sk\u00e4rmen kan man se loggar i Loki, kopplade till Prometheus-m\u00e4tv\u00e4rden, med hj\u00e4lp av konceptet f\u00f6r delad sk\u00e4rm. Fr\u00e5n och med version 6.5 l\u00e5ter Grafana hantera sp\u00e5rnings-ID:t (trace id) i loggeinl\u00e4gg fr\u00e5n Loki f\u00f6r att l\u00e4nka till dina favoritverktyg f\u00f6r distribuerad sp\u00e5rning (Jaeger).<\/p>\n<h3>Lokal test av Loki<\/h3>\n<p>Det enklaste s\u00e4ttet att testa Loki lokalt \u00e4r att anv\u00e4nda docker-compose. Docker-compose-filen finns i Loki-repositoriet. Du kan f\u00e5 repositoriet med f\u00f6ljande kommando <code>git<\/code>:<\/p>\n<pre><code class=\"go\">$ git clone https:\/\/github.com\/grafana\/loki.git<\/code><\/pre>\n<p>D\u00e4refter m\u00e5ste du g\u00e5 till produktionskatalogen:<\/p>\n<pre><code class=\"go\">$ cd production<\/code><\/pre>\n<p>Efter det kan du f\u00e5 den senaste versionen av Docker-bilder:<\/p>\n<pre><code class=\"go\">$ docker-compose pull<\/code><\/pre>\n<p>Slutligen startas Loki-stacken med f\u00f6ljande kommando:<\/p>\n<pre><code class=\"go\">$ docker-compose up<\/code><\/pre>\n<h3>Arkitektur f\u00f6r Loki<\/h3>\n<p>H\u00e4r \u00e4r ett litet diagram \u00f6ver arkitekturen f\u00f6r Loki:<\/p>\n<p><img decoding=\"async\" alt=\"Loki - loggsamling med Prometheus-ansatsen\" src=\"\/wp-content\/uploads\/2020\/02\/fc5703bcebc1391e719640e99544f909.jpg\" style=\"display:block;margin: 0 auto;\"><br \/>\n<i>Arkitekturprinciper f\u00f6r Loki<\/i><\/p>\n<p>Webbklienten k\u00f6r applikationer p\u00e5 servern, Promtail samlar in loggar och skickar dem till Loki, webbklienten skickar ocks\u00e5 metadata till Loki. Loki aggregerar allt och vidarebefordrar till Grafana.<br \/>\nLoki \u00e4r ig\u00e5ng. F\u00f6r att se de komponenter som finns, k\u00f6r f\u00f6ljande kommando:<\/p>\n<pre><code class=\"go\">$ docker ps<\/code><\/pre>\n<p>Vid en nyinstallerad Docker b\u00f6r kommandot returnera f\u00f6ljande resultat:<\/p>\n<pre><code class=\"go\">BILD               PORTAR                  NAMN\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>Vi ser f\u00f6ljande komponenter:<\/p>\n<ul>\n<li>Promtail: agent som ansvarar f\u00f6r centralisering av loggar<\/li>\n<li>Grafana: ett v\u00e4lk\u00e4nt verktyg f\u00f6r dashboards<\/li>\n<li>Loki: daemon f\u00f6r centralisering av data<\/li>\n<\/ul>\n<p>Inom en klassisk infrastruktur (till exempel baserad p\u00e5 virtuella maskiner) m\u00e5ste varje maskin ha agenten Promtail installerad. Grafana och Loki kan installeras p\u00e5 samma maskin.<\/p>\n<h3>Distribution i Kubernetes<\/h3>\n<p>Installationen av Loki-komponenter i Kubernetes kommer att best\u00e5 av f\u00f6ljande:<\/p>\n<ul>\n<li>daemonSet f\u00f6r att distribuera agenten Promtail p\u00e5 varje maskin i serverklustret<\/li>\n<li>distribution (Deployment) av Loki<\/li>\n<li>och sist \u2014 distribution av Grafana.<\/li>\n<\/ul>\n<p>Lyckligtvis \u00e4r Loki tillg\u00e4nglig som ett Helm-paket, vilket f\u00f6renklar dess distribution.<\/p>\n<h3>Installation via Heml<\/h3>\n<p>Heml b\u00f6r redan vara installerad hos dig. Den kan laddas ner fr\u00e5n GitHub-repositoryt f\u00f6r projektet. Den installeras genom att packa upp arkivet motsvarande din arkitektur, och l\u00e4gga till helm i <code>$PATH<\/code>.<\/p>\n<blockquote><p><i><b>Anm\u00e4rkning:<\/b> version 3.0.0 av Helm sl\u00e4pptes nyligen. Eftersom det gjordes m\u00e5nga f\u00f6r\u00e4ndringar, rekommenderas l\u00e4saren att v\u00e4nta lite innan de b\u00f6rjar anv\u00e4nda den.<\/i>.<\/p><\/blockquote>\n<h3>Till\u00e4gg av k\u00e4lla f\u00f6r Helm<\/h3>\n<p>F\u00f6rsta steget \u00e4r att l\u00e4gga till 'loki'-repo med f\u00f6ljande kommando:<\/p>\n<pre><code class=\"go\">$ helm add loki https:\/\/grafana.github.io\/loki\/charts<\/code><\/pre>\n<p>D\u00e4refter kan man s\u00f6ka efter paket med namnet 'loki':<\/p>\n<pre><code class=\"go\">$ helm search loki<\/code><\/pre>\n<p>Resultatet:<\/p>\n<pre><code class=\"go\">loki\/loki       0.17.2 v0.4.0 Loki: som Prometheus, men f\u00f6r loggar.\nloki\/loki-stack 0.19.1 v0.4.0 Loki: som Prometheus, men f\u00f6r loggar.\nloki\/fluent-bit 0.0.2  v0.0.1 Anv\u00e4nder fluent-bit Loki go-plugin f\u00f6r...\nloki\/promtail   0.13.1 v0.4.0 Ansvarig f\u00f6r att samla loggar och...<\/code><\/pre>\n<p>Dessa paket har f\u00f6ljande funktioner:<\/p>\n<ul>\n<li>paketet <b>loki\/loki<\/b> motsvarar endast Loki-servern<\/li>\n<li>paketet <b>loki\/fluent-bit<\/b> l\u00e5t dig distribuera DaemonSet med fluent-bit f\u00f6r loggsamling ist\u00e4llet f\u00f6r Promtail<\/li>\n<li>paketet <b>loki\/promtail<\/b> inneh\u00e5ller agenten f\u00f6r loggfilssamling<\/li>\n<li>paketet <b>loki\/loki-stack<\/b>, till\u00e5ter att omedelbart distribuera Loki tillsammans med Promtail.<\/li>\n<\/ul>\n<h3>Installation av Loki<\/h3>\n<p>F\u00f6r att distribuera Loki i Kubernetes, k\u00f6r f\u00f6ljande kommando i namnutrymmet 'monitoring':<\/p>\n<pre><code class=\"go\">$ helm upgrade --install loki loki\/loki-stack --namespace monitoring<\/code><\/pre>\n<p>F\u00f6r att spara p\u00e5 disk, l\u00e4gg till parametern <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>Anm\u00e4rkning:<\/b> om du vill distribuera Grafana samtidigt, l\u00e4gg till parametern <code>--set grafana.enabled = true<\/code><\/i><\/p><\/blockquote>\n<p>N\u00e4r du k\u00f6r det h\u00e4r kommandot b\u00f6r du f\u00e5 f\u00f6ljande utdata:<\/p>\n<pre><code class=\"go\">SENASTE UTPLACERING: Tis 19 nov 15:56:54 2019\nNAMNRYMD: &ouml;vervakning\nSTATUS: UTPLACERAD\nRESURSER:\n==&amp;gt; v1\/ClusterRole\nNAMN &Aring;LDER\nloki-promtail-clusterrole 189d\n&hellip;\nANTECKNINGAR:\nLoki-stacken har blivit utplacerad i din kluster. Loki kan nu l&auml;ggas till som en datak&auml;lla i Grafana.\nSe &lt;a href=&quot;http:\/\/docs.grafana.org\/features\/datasources\/loki\/&quot;&gt;http:\/\/docs.grafana.org\/features\/datasources\/loki\/&lt;\/a&gt; f&ouml;r mer information.<\/code><\/pre>\n<p>Genom att titta p\u00e5 statusen f\u00f6r poddar i namnomr\u00e5det \"monitoring\" ser vi att allt \u00e4r distribuerat:<\/p>\n<pre><code class=\"go\">$ kubectl -n monitoring get pods -l release=loki<\/code><\/pre>\n<p>Resultatet:<\/p>\n<pre><code class=\"go\">NAMN                 KLAR  STATUS   OMSTARTAR  \u00c5LDER\nloki-0               1\/1    K\u00f6r      0         147m\nloki-promtail-9zjvc  1\/1    K\u00f6r      0         3h25m\nloki-promtail-f6brf  1\/1    K\u00f6r      0         11h\nloki-promtail-hdcj7  1\/1    K\u00f6r      0         3h23m\nloki-promtail-jbqhc  1\/1    K\u00f6r      0         11h\nloki-promtail-mj642  1\/1    K\u00f6r      0         62m\nloki-promtail-nm64g  1\/1    K\u00f6r      0         24m<\/code><\/pre>\n<p>Alla poddar k\u00f6rs. Nu \u00e4r det dags att g\u00f6ra n\u00e5gra tester!<\/p>\n<h3>Anslutning till Grafana<\/h3>\n<p>F\u00f6r att ansluta till Grafana via Kubernetes, m\u00e5ste du \u00f6ppna en tunnel till dess pod. H\u00e4r \u00e4r kommandot f\u00f6r att \u00f6ppna port 3000 f\u00f6r Grafana-poden:<\/p>\n<pre><code class=\"go\">$ kubectl -n port-forward monitoring svc\/loki-grafana 3000:80<\/code><\/pre>\n<p>En annan viktig punkt \u00e4r behovet av att \u00e5terst\u00e4lla administrat\u00f6rsl\u00f6senordet f\u00f6r Grafana. L\u00f6senordet lagras i hemligheten <code>loki-grafana<\/code> i f\u00e4ltet <code>.data.admin-user<\/code> i base64-format.<\/p>\n<p>F\u00f6r att \u00e5terst\u00e4lla det, k\u00f6r f\u00f6ljande kommando:<\/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>Anv\u00e4nd detta l\u00f6senord tillsammans med det standardadministrat\u00f6rskontot (admin).<\/p>\n<h3>Definiera datak\u00e4lla f\u00f6r Loki i Grafana<\/h3>\n<p>F\u00f6rst, se till att en datak\u00e4lla f\u00f6r Loki har skapats (Konfiguration \/ Datasource).<br \/>\nH\u00e4r \u00e4r ett exempel:<\/p>\n<p><img decoding=\"async\" alt=\"Loki - loggsamling med Prometheus-ansatsen\" src=\"\/wp-content\/uploads\/2020\/02\/3b670a4b1a8b4db74b1e1f525fd03129.jpg\" style=\"display:block;margin: 0 auto;\"><br \/>\n<i>Exempel p\u00e5 inst\u00e4llning av datak\u00e4lla f\u00f6r Loki<\/i><\/p>\n<p>Genom att klicka p\u00e5 \"Test\" kan du kontrollera anslutningen till Loki.<\/p>\n<h3>G\u00f6r f\u00f6rfr\u00e5gningar till Loki<\/h3>\n<p>Nu g\u00e5r du till Grafana i avsnittet \"Explore\". N\u00e4r Loki tar emot loggar fr\u00e5n containrar l\u00e4gger den till metadata fr\u00e5n Kubernetes. D\u00e4rf\u00f6r blir det m\u00f6jligt att granska loggar fr\u00e5n en specifik container.<\/p>\n<p>Till exempel, f\u00f6r att v\u00e4lja loggar fr\u00e5n promtail-containern kan du anv\u00e4nda f\u00f6ljande f\u00f6rfr\u00e5gan: <code>{container_name = \"promtail\"}<\/code>.<br \/>\nKom ih\u00e5g att ocks\u00e5 v\u00e4lja datak\u00e4lla f\u00f6r Loki.<\/p>\n<p>Denna f\u00f6rfr\u00e5gan kommer att returnera containeraktivitet i f\u00f6ljande form:<\/p>\n<p><img decoding=\"async\" alt=\"Loki - loggsamling med Prometheus-ansatsen\" src=\"\/wp-content\/uploads\/2020\/02\/ed2baebd374b9a6242cfc397776fa65f.jpg\" style=\"display:block;margin: 0 auto;\"><br \/>\n<i>Resultatet av f\u00f6rfr\u00e5gan i Grafana <\/i><\/p>\n<h3>L\u00e4gg till p\u00e5 dashboard<\/h3>\n<p>Fr\u00e5n och med Grafana 6.4 kan du placera logginformation direkt p\u00e5 dashboarden. Efter detta kommer anv\u00e4ndaren snabbt kunna v\u00e4xla mellan antalet f\u00f6rfr\u00e5gningar p\u00e5 sin webbplats och applikationens sp\u00e5rningar.<\/p>\n<p>Nedan \u00e4r ett exempel p\u00e5 en dashboard som implementerar denna interaktion:<\/p>\n<p><img decoding=\"async\" alt=\"Loki - loggsamling med Prometheus-ansatsen\" src=\"\/wp-content\/uploads\/2020\/02\/d76c5345d543579eb3768fcdb0a2567b.jpg\" style=\"display:block;margin: 0 auto;\"><br \/>\n<i>Exempel p\u00e5 en instrumentpanel med Prometheus-metriker och Loki-loggar<\/i><\/p>\n<h3>Framtiden f\u00f6r Loki<\/h3>\n<p>Jag b\u00f6rjade anv\u00e4nda Loki i maj\/juni med version 0.1. Idag har version 1 sl\u00e4ppts, och till och med 1.1 och 1.2.<\/p>\n<p>Vi m\u00e5ste erk\u00e4nna att version 0.1 inte var tillr\u00e4ckligt stabil. Men 0.3 visade redan verkliga tecken p\u00e5 mognad, och de f\u00f6ljande versionerna (0.4, sedan 1.0) f\u00f6rst\u00e4rkte bara det intrycket.<\/p>\n<p>Efter 1.0.0 finns det ingen urs\u00e4kt f\u00f6r att inte anv\u00e4nda detta fantastiska verktyg.<\/p>\n<p>Framtida f\u00f6rb\u00e4ttringar b\u00f6r handla om integrationen av Loki med den utm\u00e4rkta Grafana. Faktum \u00e4r att Grafana 6.4 redan hade en bra integration med instrumentpanelerna.<\/p>\n<p>Grafana 6.5, som nyligen sl\u00e4pptes, f\u00f6rb\u00e4ttrar denna integration ytterligare genom att automatiskt k\u00e4nna igen inneh\u00e5llet i loggar i JSON-format.<\/p>\n<p>Nedan finns en kort video som visar detta mekanism:<\/p>\n<p><img decoding=\"async\" alt=\"Loki - loggsamling med Prometheus-ansatsen\" src=\"\/wp-content\/uploads\/2020\/02\/1e0a5269f21e401f349a35788672aec1.jpg\" style=\"display:block;margin: 0 auto;\"><br \/>\n<i>Anv\u00e4ndning av Loki-str\u00e4ngar som visas i Grafana<\/i><\/p>\n<p>Det blir m\u00f6jligt att anv\u00e4nda ett av JSON-f\u00e4lten, till exempel f\u00f6r:<\/p>\n<ul>\n<li>l\u00e4nkar till externa verktyg<\/li>\n<li>filtrering av logginneh\u00e5ll<\/li>\n<\/ul>\n<p>Till exempel kan du klicka p\u00e5 traceId f\u00f6r att g\u00e5 till Zipkin eller Jaeger.<\/p>\n<p>Vi ser fram emot era kommentarer och bjuder in till <noindex><a rel=\"nofollow\" href=\"https:\/\/otus.pw\/P37L\/\">\u00f6ppen webbinarie<\/a><\/noindex>, d\u00e4r vi pratar om hur DevOps-industrin utvecklades under 2019 och diskuterar m\u00f6jliga utvecklingsv\u00e4gar f\u00f6r 2020.<\/p>\n<p>K\u00e4lla: <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 5.0.4 - aioseo.com -->\n\t<meta name=\"description\" content=\"\u0421\u0430\u043b\u044e\u0442, \u0445\u0430\u0431\u0440\u043e\u0432\u0447\u0430\u043d\u0435!\" \/>\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\/sv\/blog\/administrirovanie\/loki-sbor-logov-ispolzuya-podhod-prometheus\" \/>\n\t\t<meta name=\"generator\" content=\"All in One SEO (AIOSEO) 5.0.4\" \/>\n\t\t<meta property=\"og:locale\" content=\"sv_SE\" \/>\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!\" \/>\n\t\t<meta property=\"og:url\" content=\"https:\/\/prohoster.info\/sv\/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 - loggsamling med Prometheus-tillv\u00e4gag\u00e5ngss\u00e4tt | ProHoster","description":"Hej, Khabrovianer!","canonical_url":"https:\/\/prohoster.info\/sv\/blog\/administrirovanie\/loki-sbor-logov-ispolzuya-podhod-prometheus","robots":"max-image-preview:large","keywords":"","webmasterTools":{"miscellaneous":""},"schema":null,"og:locale":"sv_SE","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!","og:url":"https:\/\/prohoster.info\/sv\/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","focus_keyword":null,"additional_keywords":null,"truseo_locale":null},"gt_translate_keys":[{"key":"link","format":"url"}],"_links":{"self":[{"href":"https:\/\/prohoster.info\/sv\/wp-json\/wp\/v2\/posts\/56206","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/prohoster.info\/sv\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/prohoster.info\/sv\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/prohoster.info\/sv\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/prohoster.info\/sv\/wp-json\/wp\/v2\/comments?post=56206"}],"version-history":[{"count":0,"href":"https:\/\/prohoster.info\/sv\/wp-json\/wp\/v2\/posts\/56206\/revisions"}],"wp:attachment":[{"href":"https:\/\/prohoster.info\/sv\/wp-json\/wp\/v2\/media?parent=56206"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/prohoster.info\/sv\/wp-json\/wp\/v2\/categories?post=56206"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/prohoster.info\/sv\/wp-json\/wp\/v2\/tags?post=56206"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}