{"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\/es\/blog\/administrirovanie\/loki-sbor-logov-ispolzuya-podhod-prometheus","title":{"rendered":"Loki \u2014 recopilaci\u00f3n de registros utilizando el enfoque de Prometheus","gt_translate_keys":[{"key":"rendered","format":"text"}]},"content":{"rendered":"<p><i>\u00a1Hola, amigos de Habr! Con la llegada de un nuevo grupo para el curso <noindex><a rel=\"nofollow\" href=\"https:\/\/otus.pw\/P37L\/\">\u00abPr\u00e1cticas y herramientas de DevOps\u00bb<\/a><\/noindex> hemos preparado para ustedes la traducci\u00f3n de un material interesante.<\/i><\/p>\n<p>Este art\u00edculo es una breve introducci\u00f3n a Loki. El proyecto Loki <noindex><a rel=\"nofollow\" href=\"https:\/\/grafana.com\/oss\/loki\/\">es respaldado por Grafana<\/a><\/noindex> y est\u00e1 dirigido a la recopilaci\u00f3n centralizada de registros (desde servidores o contenedores).<\/p>\n<p>La principal fuente de inspiraci\u00f3n para Loki fue <noindex><a rel=\"nofollow\" href=\"http:\/\/prometheus.io\/\">Prometheus<\/a><\/noindex> con la idea de aplicar sus enfoques a la gesti\u00f3n de registros:<\/p>\n<ul>\n<li>uso de etiquetas (labels) para almacenar datos<\/li>\n<li>consumir pocos recursos<\/li>\n<\/ul>\n<p>Volveremos a los principios de funcionamiento de Prometheus y proporcionaremos algunos ejemplos de su uso en el contexto de Kubernetes.<\/p>\n<h3>Algunas palabras sobre Prometheus<\/h3>\n<p>Para comprender completamente c\u00f3mo funciona Loki, es importante dar un paso atr\u00e1s y recordar un poco sobre Prometheus.<\/p>\n<p>Una de las caracter\u00edsticas distintivas de Prometheus es la extracci\u00f3n de m\u00e9tricas desde puntos de recolecci\u00f3n (a trav\u00e9s de exportadores) y su almacenamiento en TSDB (Base de Datos de Series Temporales) con la adici\u00f3n de metadatos en forma de etiquetas.<noindex><a rel=\"nofollow\" name=\"habracut\"><\/a><\/noindex><\/p>\n<h3>\u00bfPor qu\u00e9 es necesario?<\/h3>\n<p>Recientemente, Prometheus se ha convertido en el est\u00e1ndar de facto en el mundo de los contenedores y Kubernetes: su instalaci\u00f3n es muy sencilla y en un cl\u00faster de Kubernetes hay, por defecto, un endpoint para Prometheus. Prometheus tambi\u00e9n puede extraer m\u00e9tricas de aplicaciones desplegadas en contenedores, manteniendo ciertas etiquetas. Por lo tanto, la supervisi\u00f3n de aplicaciones es muy f\u00e1cil de implementar.<\/p>\n<p>Desafortunadamente, todav\u00eda no hay una soluci\u00f3n 'llave en mano' para la gesti\u00f3n de registros y debes encontrar una soluci\u00f3n para ti:<\/p>\n<ul>\n<li>un servicio en la nube gestionado para la centralizaci\u00f3n de registros (AWS, Azure o Google)<\/li>\n<li>un servicio de monitoreo 'monitoreo como servicio' (por ejemplo, Datadog)<\/li>\n<li>crear tu propio servicio de recopilaci\u00f3n de registros.<\/li>\n<\/ul>\n<p>Para la tercera opci\u00f3n, tradicionalmente he utilizado Elasticsearch, aunque no siempre he estado satisfecho con \u00e9l (especialmente por su pesadez y complejidad de configuraci\u00f3n).<\/p>\n<p>Loki fue dise\u00f1ado con el objetivo de simplificar su implementaci\u00f3n de acuerdo con los siguientes principios:<\/p>\n<ul>\n<li>ser f\u00e1cil de iniciar<\/li>\n<li>consumir pocos recursos<\/li>\n<li>funcionar de manera aut\u00f3noma sin ning\u00fan mantenimiento especial<\/li>\n<li>servir como complemento de Prometheus para ayudar en la investigaci\u00f3n de errores<\/li>\n<\/ul>\n<p>Sin embargo, esta simplicidad se logra a expensas de algunos compromisos. Uno de ellos es no indexar el contenido. Por lo tanto, la b\u00fasqueda de texto no es muy eficiente o rica y no permite llevar estad\u00edsticas sobre el contenido del texto. Pero dado que Loki quiere ser equivalente a grep y un complemento para Prometheus, esto no es una desventaja.<\/p>\n<h3>Investigaci\u00f3n de incidentes<\/h3>\n<p>Para entender mejor por qu\u00e9 Loki no necesita indexaci\u00f3n, volvamos al m\u00e9todo de investigaci\u00f3n de incidentes que utilizaron los desarrolladores de Loki:<\/p>\n<p><img decoding=\"async\" alt=\"Loki \u2014 recopilaci\u00f3n de registros utilizando el enfoque de Prometheus\" src=\"\/wp-content\/uploads\/2020\/02\/2f9ba72d68ccafbe44ab1700d08e3a33.jpg\" style=\"display:block;margin: 0 auto;\"><br \/>\n<i>1 Alerta \u2192 2 Dashboard \u2192 3 Consulta Adhoc \u2192 4 Agregaci\u00f3n de registros \u2192 5 Trazado distribuido \u2192 6 \u00a1Solucionar!<br \/>\n(1 Alerta \u2192 2 Dashboard \u2192 3 Consulta Adhoc \u2192 4 Agregaci\u00f3n de registros \u2192 5 Trazado distribuido \u2192 6 \u00a1Solucionar!)<\/i><\/p>\n<p>La idea es que recibimos alguna alerta (notificaci\u00f3n de Slack, SMS, etc.) y despu\u00e9s:<\/p>\n<ul>\n<li>miramos los dashboards de Grafana<\/li>\n<li>vemos las m\u00e9tricas de los servicios (por ejemplo, en Prometheus)<\/li>\n<li>revisamos los registros (por ejemplo, en Elasticsearch)<\/li>\n<li>posiblemente, echamos un vistazo a los trazos distribuidos (Jaeger, Zipkin, etc.)<\/li>\n<li>y, finalmente, solucionamos el problema subyacente.<\/li>\n<\/ul>\n<p>Aqu\u00ed, en el caso de la pila Grafana + Prometheus + Elasticsearch + Zipkin, se tendr\u00e1n que usar cuatro herramientas diferentes. Para reducir el tiempo, ser\u00eda ideal poder realizar todos estos pasos utilizando una sola herramienta: Grafana. Es importante se\u00f1alar que este enfoque de investigaci\u00f3n se implement\u00f3 en Grafana a partir de la versi\u00f3n 6. As\u00ed, se hace posible acceder a los datos de Prometheus directamente desde Grafana.<\/p>\n<p><img decoding=\"async\" alt=\"Loki \u2014 recopilaci\u00f3n de registros utilizando el enfoque de Prometheus\" src=\"\/wp-content\/uploads\/2020\/02\/eefc5a599a23abeb0624f4e3265a31e6.jpg\" style=\"display:block;margin: 0 auto;\"><br \/>\n<i>La pantalla Explorer se divide entre Prometheus y Loki<\/i><\/p>\n<p>En esta pantalla se pueden ver los registros en Loki relacionados con las m\u00e9tricas de Prometheus, utilizando el concepto de pantalla dividida. Desde la versi\u00f3n 6.5, Grafana permite manejar el identificador de trazado (trace id) en los registros de Loki para acceder a sus herramientas de trazado distribuido favoritas (Jaeger).<\/p>\n<h3>Prueba local de Loki<\/h3>\n<p>La forma m\u00e1s sencilla de probar Loki localmente es usar docker-compose. El archivo docker-compose se encuentra en el repositorio de Loki. Se puede obtener el repositorio con el siguiente comando <code>git<\/code>:<\/p>\n<pre><code class=\"go\">$ git clone https:\/\/github.com\/grafana\/loki.git<\/code><\/pre>\n<p>Luego, necesita ingresar al directorio de producci\u00f3n:<\/p>\n<pre><code class=\"go\">$ cd production<\/code><\/pre>\n<p>Despu\u00e9s de esto, puede obtener la \u00faltima versi\u00f3n de las im\u00e1genes de Docker:<\/p>\n<pre><code class=\"go\">$ docker-compose pull<\/code><\/pre>\n<p>Finalmente, la pila de Loki se inicia con el siguiente comando:<\/p>\n<pre><code class=\"go\">$ docker-compose up<\/code><\/pre>\n<h3>Arquitectura de Loki<\/h3>\n<p>Aqu\u00ed hay un peque\u00f1o diagrama con la arquitectura de Loki:<\/p>\n<p><img decoding=\"async\" alt=\"Loki \u2014 recopilaci\u00f3n de registros utilizando el enfoque de Prometheus\" src=\"\/wp-content\/uploads\/2020\/02\/fc5703bcebc1391e719640e99544f909.jpg\" style=\"display:block;margin: 0 auto;\"><br \/>\n<i>Principios de la arquitectura de Loki<\/i><\/p>\n<p>El cliente web ejecuta aplicaciones en el servidor, Promtail recopila los registros y los env\u00eda a Loki, el cliente web tambi\u00e9n env\u00eda metadatos a Loki. Loki los agrega y los env\u00eda a Grafana.<br \/>\nLoki est\u00e1 en funcionamiento. Para ver los componentes disponibles, ejecute el siguiente comando:<\/p>\n<pre><code class=\"go\">$ docker ps<\/code><\/pre>\n<p>En caso de que se haya instalado Docker recientemente, el comando deber\u00eda devolver el siguiente resultado:<\/p>\n<pre><code class=\"go\">IMAGEN               PUERTOS                  NOMBRES\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>Vemos los siguientes componentes:<\/p>\n<ul>\n<li>Promtail: agente responsable de la centralizaci\u00f3n de registros<\/li>\n<li>Grafana: herramienta conocida para dashboards<\/li>\n<li>Loki: demonio de centralizaci\u00f3n de datos<\/li>\n<\/ul>\n<p>Dentro de una infraestructura cl\u00e1sica (por ejemplo, basada en m\u00e1quinas virtuales), cada m\u00e1quina debe tener un agente Promtail desplegado. Grafana y Loki pueden ser instalados en una sola m\u00e1quina.<\/p>\n<h3>Despliegue en Kubernetes<\/h3>\n<p>La instalaci\u00f3n de los componentes de Loki en Kubernetes consistir\u00e1 en lo siguiente:<\/p>\n<ul>\n<li>daemonSet para desplegar el agente Promtail en cada una de las m\u00e1quinas del cl\u00faster de servidores<\/li>\n<li>despliegue (Deployment) de Loki<\/li>\n<li>y por \u00faltimo, el despliegue de Grafana.<\/li>\n<\/ul>\n<p>Afortunadamente, Loki est\u00e1 disponible como un paquete Helm, lo que simplifica su despliegue.<\/p>\n<h3>Instalaci\u00f3n a trav\u00e9s de Helm<\/h3>\n<p>Helm ya deber\u00eda estar instalado en su sistema. Se puede descargar desde el repositorio de GitHub del proyecto. Se instala descomprimiendo el archivo correspondiente a su arquitectura y agregando helm a <code>$PATH<\/code>.<\/p>\n<blockquote><p><i><b>Nota:<\/b> la versi\u00f3n 3.0.0 de Helm fue lanzada recientemente. Debido a que se hicieron muchos cambios, se recomienda al lector esperar un poco antes de comenzar a usarla.<\/i>.<\/p><\/blockquote>\n<h3>Agregar fuente para Helm<\/h3>\n<p>El primer paso ser\u00e1 agregar el repositorio 'loki' con el siguiente comando:<\/p>\n<pre><code class=\"go\">$ helm add loki https:\/\/grafana.github.io\/loki\/charts<\/code><\/pre>\n<p>Despu\u00e9s de esto, se pueden buscar paquetes con el nombre 'loki':<\/p>\n<pre><code class=\"go\">$ helm search loki<\/code><\/pre>\n<p>Resultado:<\/p>\n<pre><code class=\"go\">loki\/loki       0.17.2 v0.4.0 Loki: como Prometheus, pero para registros.\nloki\/loki-stack 0.19.1 v0.4.0 Loki: como Prometheus, pero para registros.\nloki\/fluent-bit 0.0.2  v0.0.1 Usa el plugin de Loki para fluent-bit para...\nloki\/promtail   0.13.1 v0.4.0 Responsable de recopilar registros y...<\/code><\/pre>\n<p>Estos paquetes tienen las siguientes funcionalidades:<\/p>\n<ul>\n<li>paquete <b>loki\/loki<\/b> corresponde \u00fanicamente al servidor Loki<\/li>\n<li>paquete <b>loki\/fluent-bit<\/b> le permite desplegar DaemonSet, utilizando fluent-bit para recopilar registros en lugar de Promtail<\/li>\n<li>paquete <b>loki\/promtail<\/b> contiene el agente de recopilaci\u00f3n de registros<\/li>\n<li>paquete <b>loki\/loki-stack<\/b>, permite desplegar Loki junto con Promtail de una vez.<\/li>\n<\/ul>\n<h3>Instalaci\u00f3n de Loki<\/h3>\n<p>Para desplegar Loki en Kubernetes, ejecute el siguiente comando en el espacio de nombres 'monitoring':<\/p>\n<pre><code class=\"go\">$ helm upgrade --install loki loki\/loki-stack --namespace monitoring<\/code><\/pre>\n<p>Para guardar en disco, agregue el par\u00e1metro <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>Nota:<\/b> si desea desplegar Grafana al mismo tiempo, agregue el par\u00e1metro <code>--set grafana.enabled = true<\/code><\/i><\/p><\/blockquote>\n<p>Al ejecutar este comando, deber\u00eda obtener la siguiente salida:<\/p>\n<pre><code class=\"go\">&Uacute;LTIMO DESPLIEGUE: Mar Nov 19 15:56:54 2019\nNOMBRE DEL ESPACIO: monitoring\nESTADO: DESPLEGADO\nRECURSOS:\n==&amp;gt; v1\/ClusterRole\nNOMBRE EDAD\nloki-promtail-clusterrole 189d\n&hellip;\nNOTAS:\nLa pila de Loki ha sido desplegada en tu cl&uacute;ster. Loki ahora puede ser agregado como una fuente de datos en Grafana.\nVer &lt;a href=&quot;http:\/\/docs.grafana.org\/features\/datasources\/loki\/&quot;&gt;http:\/\/docs.grafana.org\/features\/datasources\/loki\/&lt;\/a&gt; para m&aacute;s detalles.<\/code><\/pre>\n<p>Al revisar el estado de los pods en el espacio de nombres \u201cmonitoring\u201d, veremos que todo est\u00e1 desplegado:<\/p>\n<pre><code class=\"go\">$ kubectl -n monitoring get pods -l release=loki<\/code><\/pre>\n<p>Resultado:<\/p>\n<pre><code class=\"go\">NOMBRE                 LISTO  ESTADO   REINICIOS  EDAD\nloki-0               1\/1    En ejecuci\u00f3n  0         147m\nloki-promtail-9zjvc  1\/1    En ejecuci\u00f3n  0         3h25m\nloki-promtail-f6brf  1\/1    En ejecuci\u00f3n  0         11h\nloki-promtail-hdcj7  1\/1    En ejecuci\u00f3n  0         3h23m\nloki-promtail-jbqhc  1\/1    En ejecuci\u00f3n  0         11h\nloki-promtail-mj642  1\/1    En ejecuci\u00f3n  0         62m\nloki-promtail-nm64g  1\/1    En ejecuci\u00f3n  0         24m<\/code><\/pre>\n<p>Todos los pods est\u00e1n en funcionamiento. \u00a1Ahora es el momento de hacer algunas pruebas!<\/p>\n<h3>Conect\u00e1ndose a Grafana<\/h3>\n<p>Para conectarse a Grafana desde Kubernetes, es necesario abrir un t\u00fanel a su pod. A continuaci\u00f3n se muestra el comando para abrir el puerto 3000 para el pod de Grafana:<\/p>\n<pre><code class=\"go\">$ kubectl -n port-forward monitoring svc\/loki-grafana 3000:80<\/code><\/pre>\n<p>Otro aspecto importante es la necesidad de recuperar la contrase\u00f1a del administrador de Grafana. La contrase\u00f1a se almacena en el secreto <code>loki-grafana<\/code> en el campo <code>.data.admin-user<\/code> en formato base64.<\/p>\n<p>Para recuperarla, ejecute el siguiente comando:<\/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>Use esta contrase\u00f1a junto con la cuenta de administrador predeterminada (admin).<\/p>\n<h3>Definiendo el origen de datos Loki en Grafana<\/h3>\n<p>Primero, aseg\u00farese de que se haya creado el origen de datos Loki (Configuraci\u00f3n \/ Origen de datos).<br \/>\nAqu\u00ed hay un ejemplo:<\/p>\n<p><img decoding=\"async\" alt=\"Loki \u2014 recopilaci\u00f3n de registros utilizando el enfoque de Prometheus\" src=\"\/wp-content\/uploads\/2020\/02\/3b670a4b1a8b4db74b1e1f525fd03129.jpg\" style=\"display:block;margin: 0 auto;\"><br \/>\n<i>Ejemplo de configuraci\u00f3n del origen de datos para Loki<\/i><\/p>\n<p>Al hacer clic en \u201cProbar\u201d, puede verificar la conexi\u00f3n con Loki.<\/p>\n<h3>Realizando consultas a Loki<\/h3>\n<p>Ahora dir\u00edgete a Grafana en la secci\u00f3n \u201cExplorar\u201d. Al recibir registros de los contenedores, Loki agrega metadatos de Kubernetes. As\u00ed, es posible ver los registros de un contenedor espec\u00edfico.<\/p>\n<p>Por ejemplo, para seleccionar los registros del contenedor promtail, puedes usar la siguiente consulta: <code>{container_name = \"promtail\"}<\/code>.<br \/>\nAqu\u00ed tampoco olvide seleccionar el origen de datos Loki.<\/p>\n<p>Esta consulta devolver\u00e1 la actividad de los contenedores en la siguiente forma:<\/p>\n<p><img decoding=\"async\" alt=\"Loki \u2014 recopilaci\u00f3n de registros utilizando el enfoque de Prometheus\" src=\"\/wp-content\/uploads\/2020\/02\/ed2baebd374b9a6242cfc397776fa65f.jpg\" style=\"display:block;margin: 0 auto;\"><br \/>\n<i>Resultado de la consulta en Grafana <\/i><\/p>\n<h3>A\u00f1adiendo al tablero<\/h3>\n<p>A partir de Grafana 6.4, se puede colocar la informaci\u00f3n de los registros directamente en el tablero. Despu\u00e9s de esto, el usuario podr\u00e1 alternar r\u00e1pidamente entre la cantidad de solicitudes en su sitio y los rastreos de la aplicaci\u00f3n.<\/p>\n<p>A continuaci\u00f3n, se muestra un ejemplo de un panel que implementa esta interacci\u00f3n:<\/p>\n<p><img decoding=\"async\" alt=\"Loki \u2014 recopilaci\u00f3n de registros utilizando el enfoque de Prometheus\" src=\"\/wp-content\/uploads\/2020\/02\/d76c5345d543579eb3768fcdb0a2567b.jpg\" style=\"display:block;margin: 0 auto;\"><br \/>\n<i>Ejemplo de panel con m\u00e9tricas de Prometheus y registros de Loki<\/i><\/p>\n<h3>El futuro de Loki<\/h3>\n<p>Comenc\u00e9 a usar Loki en mayo\/junio con la versi\u00f3n 0.1. Hoy ya se ha lanzado la versi\u00f3n 1, e incluso las 1.1 y 1.2.<\/p>\n<p>Es necesario reconocer que la versi\u00f3n 0.1 no fue lo suficientemente estable. Pero la 0.3 mostr\u00f3 verdaderas se\u00f1ales de madurez, y las versiones siguientes (0.4, luego 1.0) solo reforzaron esta impresi\u00f3n.<\/p>\n<p>Despu\u00e9s de 1.0.0, nadie puede tener excusas para no usar esta magn\u00edfica herramienta.<\/p>\n<p>Las mejoras futuras deben centrarse no en Loki, sino m\u00e1s bien en su integraci\u00f3n con la excelente Grafana. De hecho, en Grafana 6.4 ya apareci\u00f3 una buena integraci\u00f3n con los paneles.<\/p>\n<p>Grafana 6.5, que se lanz\u00f3 recientemente, mejora a\u00fan m\u00e1s esta integraci\u00f3n, reconociendo autom\u00e1ticamente el contenido de los registros en formato JSON.<\/p>\n<p>A continuaci\u00f3n en el video hay un peque\u00f1o ejemplo de este mecanismo:<\/p>\n<p><img decoding=\"async\" alt=\"Loki \u2014 recopilaci\u00f3n de registros utilizando el enfoque de Prometheus\" src=\"\/wp-content\/uploads\/2020\/02\/1e0a5269f21e401f349a35788672aec1.jpg\" style=\"display:block;margin: 0 auto;\"><br \/>\n<i>Uso de las cadenas de Loki mostradas en Grafana<\/i><\/p>\n<p>Es posible utilizar uno de los campos JSON, por ejemplo, para:<\/p>\n<ul>\n<li>v\u00ednculo a una herramienta externa<\/li>\n<li>filtrado de contenido de registros<\/li>\n<\/ul>\n<p>Por ejemplo, puede hacer clic en traceId para ir a Zipkin o Jaeger.<\/p>\n<p>Tradicionalmente esperamos sus comentarios y los invitamos a <noindex><a rel=\"nofollow\" href=\"https:\/\/otus.pw\/P37L\/\">un seminario web abierto<\/a><\/noindex>, donde hablaremos sobre c\u00f3mo ha evolucionado la industria de DevOps durante 2019 y discutiremos posibles v\u00edas de desarrollo para 2020.<\/p>\n<p>Fuente: <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.2 - 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\/es\/blog\/administrirovanie\/loki-sbor-logov-ispolzuya-podhod-prometheus\" \/>\n\t<meta name=\"generator\" content=\"All in One SEO (AIOSEO) 5.0.2\" \/>\n\t\t<meta property=\"og:locale\" content=\"es_ES\" \/>\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\/es\/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: recolecci\u00f3n de registros utilizando el enfoque de Prometheus | ProHoster","description":"\u00a1Hola, habrovchanes!","canonical_url":"https:\/\/prohoster.info\/es\/blog\/administrirovanie\/loki-sbor-logov-ispolzuya-podhod-prometheus","robots":"max-image-preview:large","keywords":"","webmasterTools":{"miscellaneous":""},"schema":null,"og:locale":"es_ES","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\/es\/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\/es\/wp-json\/wp\/v2\/posts\/56206","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/prohoster.info\/es\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/prohoster.info\/es\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/prohoster.info\/es\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/prohoster.info\/es\/wp-json\/wp\/v2\/comments?post=56206"}],"version-history":[{"count":0,"href":"https:\/\/prohoster.info\/es\/wp-json\/wp\/v2\/posts\/56206\/revisions"}],"wp:attachment":[{"href":"https:\/\/prohoster.info\/es\/wp-json\/wp\/v2\/media?parent=56206"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/prohoster.info\/es\/wp-json\/wp\/v2\/categories?post=56206"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/prohoster.info\/es\/wp-json\/wp\/v2\/tags?post=56206"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}