<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom" xmlns:dc="http://purl.org/dc/elements/1.1/">
  <channel>
    <title>DEV Community: Jeison Arenales</title>
    <description>The latest articles on DEV Community by Jeison Arenales (@jeisonarenales).</description>
    <link>https://dev.to/jeisonarenales</link>
    <image>
      <url>https://media2.dev.to/dynamic/image/width=90,height=90,fit=cover,gravity=auto,format=auto/https:%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Fuser%2Fprofile_image%2F738308%2Fbceb342d-4711-4736-8f4e-8b05129d1665.png</url>
      <title>DEV Community: Jeison Arenales</title>
      <link>https://dev.to/jeisonarenales</link>
    </image>
    <atom:link rel="self" type="application/rss+xml" href="https://dev.to/feed/jeisonarenales"/>
    <language>en</language>
    <item>
      <title>Construye tu primer sistema de Observabilidad con Prometheus y Grafana</title>
      <dc:creator>Jeison Arenales</dc:creator>
      <pubDate>Tue, 01 Sep 2026 15:04:02 +0000</pubDate>
      <link>https://dev.to/jeisonarenales/construye-tu-primer-sistema-de-observabilidad-con-prometheus-y-grafana-2nh3</link>
      <guid>https://dev.to/jeisonarenales/construye-tu-primer-sistema-de-observabilidad-con-prometheus-y-grafana-2nh3</guid>
      <description>&lt;p&gt;En los posts anteriores estuvimos hablando de &lt;a href="https://dev.to/jeisonarenales/que-es-la-observabilidad-explicada-con-un-restaurante-1ebp"&gt;qué es la observabilidad&lt;/a&gt; y &lt;a href="https://dev.to/jeisonarenales/metricas-logs-y-trazas-los-3-pilares-de-la-observabilidad-explicados-sin-jerga-15o9"&gt;cuáles son sus señales (o pilares) fundamentales&lt;/a&gt;. Ahora que conocemos estos conceptos, no existe una mejor manera de entenderlos y aplicarlos que construyendo nuestro propio sistema de observabilidad en un ambiente controlado.&lt;/p&gt;

&lt;p&gt;Para ello vamos a utilizar una plataforma que me gusta mucho y que todos podemos usar de manera gratuita: se llama &lt;a href="https://killercoda.com" rel="noopener noreferrer"&gt;Killercoda&lt;/a&gt;, y básicamente nos permite usar un servidor en la nube para hacer nuestras pruebas sin tener que preocuparnos por romper algo o por tener costos asociados.&lt;/p&gt;

&lt;p&gt;En este post vamos a completar un laboratorio en Killercoda que nos permite construir una solución básica de observabilidad enfocada en métricas, utilizando Prometheus como nuestro backend de métricas y Grafana para la visualización. Primero vamos a responder algunas dudas que puedas tener.&lt;/p&gt;

&lt;h3&gt;
  
  
  1. ¿Qué servidor vamos a monitorear?
&lt;/h3&gt;

&lt;p&gt;Vamos a utilizar un servidor en la nube gratuito con Ubuntu Linux que vamos a provisionar con Killercoda. Killercoda nos otorga 1 hora de uso de ese servidor sin ningún costo.&lt;/p&gt;

&lt;h3&gt;
  
  
  2. ¿Cómo vamos a recolectar las métricas?
&lt;/h3&gt;

&lt;p&gt;Como vimos en el episodio anterior, las métricas nos &lt;em&gt;indican un valor (unidad de medida) en un tiempo de ejecución&lt;/em&gt;. Esto está muy bien, pero ¿cómo obtenemos esas métricas desde nuestro servidor? Existen múltiples maneras de obtener métricas de servidores y/o aplicaciones, como la instrumentación o el uso de agentes. Por ahora no vamos a entrar en mucho detalle, ya que para nuestro caso en particular solo necesitamos obtener las métricas generales de nuestro servidor.&lt;/p&gt;

&lt;p&gt;Para ello vamos a instalar un programa (&lt;a href="https://github.com/prometheus/node_exporter/" rel="noopener noreferrer"&gt;&lt;strong&gt;Prometheus Node Exporter&lt;/strong&gt;&lt;/a&gt;) en nuestro servidor en la nube que obtiene información del sistema y la expone mediante una URL (endpoint) específica: &lt;code&gt;http://localhost:9100/metrics&lt;/code&gt;.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Fms1eoxhq37v3455fcmbl.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Fms1eoxhq37v3455fcmbl.png" alt="Endpoint de Node Exporter mostrando las métricas expuestas" width="800" height="501"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;Algo importante a mencionar es que &lt;strong&gt;Prometheus Node Exporter&lt;/strong&gt; expone las métricas del estado actual de nuestro servidor. No es responsable de almacenarlas ni de mantener un histórico de sus valores; para ello necesitaremos otro componente.&lt;/p&gt;
&lt;/blockquote&gt;

&lt;h3&gt;
  
  
  3. ¿Cómo mantener el histórico de las métricas?
&lt;/h3&gt;

&lt;p&gt;Nuestro servidor ya expone las métricas mediante un endpoint específico, pero ahora necesitamos recolectar esa información a lo largo del tiempo y almacenarla para poder consultar el historial de su comportamiento.&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;&lt;strong&gt;Time Series:&lt;/strong&gt; Una serie temporal es una secuencia de valores de una métrica registrados a lo largo del tiempo. Por ejemplo, podemos registrar el uso de CPU de nuestro servidor cada cierto intervalo: &lt;code&gt;35% → 42% → 51% → 47%&lt;/code&gt;.&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;Nuestra solución será &lt;a href="https://prometheus.io/" rel="noopener noreferrer"&gt;Prometheus&lt;/a&gt;, que es un sistema open-source de monitorización y recopilación de métricas que incluye su propia base de datos de series temporales o &lt;strong&gt;TSDB&lt;/strong&gt; (Time Series Database). Prometheus es muy útil para muchos escenarios, pero para nuestro caso en particular nos enfocaremos en 2 funciones principales:&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;Recolectar (en inglés: &lt;em&gt;scrape&lt;/em&gt;) la información de las métricas de nuestro servidor conectándose a través del endpoint &lt;code&gt;http://localhost:9100/metrics&lt;/code&gt; cada 15 segundos.&lt;/li&gt;
&lt;li&gt;Almacenar esa información en una base de datos de series temporales o &lt;strong&gt;TSDB&lt;/strong&gt;.&lt;/li&gt;
&lt;/ol&gt;

&lt;h3&gt;
  
  
  4. ¿Dónde visualizar las métricas de una manera amigable?
&lt;/h3&gt;

&lt;p&gt;Nuestro sistema de monitoreo ya va tomando forma: nuestro servidor expone las métricas usando Node Exporter, Prometheus las recolecta cada 15 segundos y las almacena en una TSDB. En el artículo anterior utilizamos el tablero de un vehículo como analogía para entender las métricas. Ahora necesitamos una aplicación que nos permita construir nuestro propio tablero y visualizar esas métricas de forma amigable.&lt;/p&gt;

&lt;p&gt;Aquí vamos a introducir a &lt;a href="https://grafana.com/oss/grafana/" rel="noopener noreferrer"&gt;Grafana&lt;/a&gt;, que es una plataforma open-source para la visualización y el análisis de datos. Permite conectarse a diferentes fuentes de datos y convertir la información recopilada en dashboards, gráficos y paneles interactivos.&lt;/p&gt;

&lt;h3&gt;
  
  
  Arquitectura
&lt;/h3&gt;

&lt;p&gt;Con estos componentes ya identificados, veamos cómo encajan entre sí a nivel de arquitectura:&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Fx7ddrbbslheu8rp5gwje.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Fx7ddrbbslheu8rp5gwje.png" alt="Arquitectura del sistema de monitoreo: Node Exporter expone métricas, Prometheus las recolecta y almacena, Grafana las visualiza" width="799" height="291"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;Ubuntu Linux:&lt;/strong&gt; servidor donde se ejecutará nuestro entorno de monitorización.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Node Exporter:&lt;/strong&gt; componente que expone las métricas del sistema operativo, como CPU, memoria, disco y red. Se ejecuta directamente sobre el servidor Ubuntu.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Docker:&lt;/strong&gt; utilizado para ejecutar Prometheus y Grafana en contenedores, sin necesidad de instalarlos manualmente en el servidor.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Prometheus:&lt;/strong&gt; sistema de monitorización encargado de recolectar esas métricas cada 15 segundos y almacenarlas en su base de datos de series temporales.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Grafana:&lt;/strong&gt; herramienta utilizada para consultar y visualizar las métricas mediante dashboards.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Web Browser:&lt;/strong&gt; utilizado para acceder a la interfaz de Grafana.&lt;/li&gt;
&lt;/ul&gt;

&lt;h3&gt;
  
  
  Manos a la obra
&lt;/h3&gt;

&lt;p&gt;Ya tenemos claro cómo funcionaría nuestro sistema de monitoreo y por qué necesitamos cada una de sus piezas. Ahora toca construirlo con tus propias manos.&lt;/p&gt;

&lt;p&gt;Preparé un escenario guiado en Killercoda donde vas a instalar y configurar cada componente paso a paso, en el mismo orden en que los presentamos en este post:&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;
&lt;strong&gt;Instalar Node Exporter&lt;/strong&gt; directamente en el servidor Ubuntu y verificar que expone las métricas del sistema.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Instalar y configurar Prometheus&lt;/strong&gt; con Docker Compose, y comprobar que está recolectando (&lt;em&gt;scrapeando&lt;/em&gt;) las métricas de Node Exporter.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Instalar Grafana&lt;/strong&gt; con Docker Compose y conectarlo a Prometheus como &lt;em&gt;data source&lt;/em&gt;, verificando la conexión desde &lt;strong&gt;Explore&lt;/strong&gt;.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Importar un dashboard de la comunidad&lt;/strong&gt; (Node Exporter Full) para visualizar todas las métricas de tu servidor sin tener que construir los paneles desde cero.&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;Cada paso incluye las verificaciones necesarias para confirmar que todo está funcionando antes de avanzar al siguiente, así que no te preocupes si nunca has usado Docker o Prometheus — el escenario te lleva de la mano.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Fmonb2divq0a7ummzlfuh.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Fmonb2divq0a7ummzlfuh.png" alt="Dashboard de Grafana mostrando métricas del servidor Ubuntu" width="800" height="387"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;👉 &lt;a href="https://killercoda.com/jeison-arenales/course/observability/prometheus-grafana-observability" rel="noopener noreferrer"&gt;Escenario en Killercoda: Construye tu primer sistema de Observabilidad con Prometheus y Grafana&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Recuerda que Killercoda te da 1 hora de uso gratuito del servidor — es tiempo de sobra para completar los 4 pasos con calma.&lt;/p&gt;

&lt;p&gt;En el próximo capítulo saldremos de las métricas y nos adentraremos en otra de las señales fundamentales de la observabilidad: los logs. Construiremos un nuevo laboratorio utilizando Grafana Loki para recopilar y consultar los registros de nuestro servidor.&lt;/p&gt;

&lt;p&gt;Cuéntame cómo te fue con el escenario, si te trabó algo o si tienes dudas sobre alguno de los componentes — déjamelo en los comentarios 👇&lt;/p&gt;

&lt;p&gt;Sígueme aquí en &lt;a href="https://dev.to/jeisonarenales"&gt;dev.to&lt;/a&gt; para no perderte los próximos artículos de la serie; voy publicando uno a la vez, sin relleno.&lt;/p&gt;

&lt;p&gt;Happy Learning 🚀&lt;/p&gt;

</description>
      <category>observability</category>
      <category>prometheus</category>
      <category>grafana</category>
      <category>devops</category>
    </item>
    <item>
      <title>Métricas, Logs y Trazas: los 3 pilares de la Observabilidad explicados sin jerga</title>
      <dc:creator>Jeison Arenales</dc:creator>
      <pubDate>Mon, 24 Aug 2026 14:42:30 +0000</pubDate>
      <link>https://dev.to/jeisonarenales/metricas-logs-y-trazas-los-3-pilares-de-la-observabilidad-explicados-sin-jerga-15o9</link>
      <guid>https://dev.to/jeisonarenales/metricas-logs-y-trazas-los-3-pilares-de-la-observabilidad-explicados-sin-jerga-15o9</guid>
      <description>&lt;p&gt;Este post es la continuación de nuestra serie dedicada a entender qué es la Observabilidad en ingeniería de sistemas. Por si no lo recuerdas, en el &lt;a href="https://dev.to/jeisonarenales/que-es-la-observabilidad-explicada-con-un-restaurante-1ebp"&gt;episodio anterior&lt;/a&gt; cubrimos el concepto de Observabilidad y lo explicamos de manera sencilla usando una analogía de un restaurante.&lt;/p&gt;

&lt;p&gt;El día de hoy aprenderemos cuáles son los 3 pilares o señales de la observabilidad y cómo estas nos permiten comprender el estado o la condición interna de un sistema complejo.&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;&lt;strong&gt;¿Qué es una Señal en Ingeniería de Sistemas?&lt;/strong&gt; Las señales son salidas del sistema que describen la actividad subyacente del sistema operativo y de las aplicaciones que se ejecutan en una plataforma. &lt;a href="https://opentelemetry.io/docs/concepts/signals/" rel="noopener noreferrer"&gt;Opentelemetry&lt;/a&gt; &lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;La primera señal que vamos a aprender son las Métricas (&lt;strong&gt;Metrics&lt;/strong&gt;). Estas pueden resultar bastante familiares, ya que nos indican un valor (unidad de medida) en un tiempo de ejecución. Por ejemplo, en el tablero de un vehículo podemos ver varias métricas que nos dan información referente al estado del vehículo, como lo son:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Velocidad actual medida en Km/h&lt;/li&gt;
&lt;li&gt;Cantidad de combustible disponible, medida en porcentaje (0% - 100%)&lt;/li&gt;
&lt;li&gt;Temperatura actual del motor, medida generalmente entre Frío y Caliente&lt;/li&gt;
&lt;li&gt;Revoluciones por minuto o RPM&lt;/li&gt;
&lt;li&gt;Promedio de kilómetros que se pueden recorrer con nuestro depósito de combustible actual&lt;/li&gt;
&lt;li&gt;Total de kilómetros recorridos por nuestro vehículo&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Fbf6lfznchtzdml875gto.jpg" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Fbf6lfznchtzdml875gto.jpg" alt="Tablero de un vehículo mostrando métricas" width="800" height="533"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Todas estas son métricas que nuestro vehículo reporta, y el tablero del vehículo puede mostrarlas para tener un entendimiento del estado actual. Esto es exactamente lo mismo en la ingeniería de sistemas: las métricas nos ayudan a entender:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Cantidad de requests por segundo en un servidor web&lt;/li&gt;
&lt;li&gt;Porcentaje de uso de CPU en nuestro servidor&lt;/li&gt;
&lt;li&gt;Porcentaje de memoria usada en nuestro servidor&lt;/li&gt;
&lt;li&gt;Cantidad de errores registrados en nuestro servidor web&lt;/li&gt;
&lt;li&gt;Uptime: cantidad de tiempo durante el cual nuestro servidor ha estado corriendo sin interrupciones&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Con esto entendemos de manera general qué son las métricas y cómo funcionan en nuestros sistemas informáticos.&lt;/p&gt;

&lt;p&gt;La segunda señal que vamos a entender son los registros (&lt;strong&gt;Logs&lt;/strong&gt;). Para entender esta señal, imaginemos por un momento que nuestros servidores son amantes de escribir en diarios, diarios en los cuales registran todo tipo de eventos y el momento exacto (timestamp) en que ocurrieron, por ejemplo:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;- 2025-05-16 10:42 Inicio sesión Samuel
- 2025-05-16 11:00 Samuel creó su primer archivo
- 2025-05-16 14:00 Samuel ejecutó el servicio web de nginx
- 2025-05-16 14:02 Nginx atendió una petición en nuestro servicio web
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;Esos diarios son guardados en archivos con rutas específicas en nuestros servidores para poder entender el comportamiento de nuestras aplicaciones y/o servidores.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Fwgue0x0dz7c9iyj4b87n.jpeg" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Fwgue0x0dz7c9iyj4b87n.jpeg" alt="Computador escribiendo logs" width="799" height="436"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;En resumen: un registro es una línea de texto con fecha y hora que nuestras aplicaciones y/o servidores escriben para informar de los eventos sucedidos.&lt;/p&gt;

&lt;p&gt;Por último, pero no menos importante, vamos a hablar de las trazas (&lt;strong&gt;Traces&lt;/strong&gt;), que se componen de 2 elementos: la traza y los tramos (&lt;strong&gt;Spans&lt;/strong&gt;).&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;Las trazas nos ofrecen una visión general de lo que ocurre cuando se envía una solicitud a una aplicación. &lt;a href="https://opentelemetry.io/docs/concepts/signals/traces" rel="noopener noreferrer"&gt;Opentelemtry&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Un tramo representa una unidad de trabajo u operación. &lt;a href="https://opentelemetry.io/docs/concepts/signals/traces/#spans" rel="noopener noreferrer"&gt;Opentelemtry&lt;/a&gt;&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;Para entender mejor esta señal usaremos una analogía de algo que nos gusta hacer a todos: comprar en línea. Cuando hacemos una compra en línea, por lo general seguimos una serie de pasos:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;1. Navegamos en nuestra página de compras online favorita
2. Iniciamos sesión con nuestra cuenta
3. Buscamos el producto que queremos
4. Comparamos con diferentes proveedores
5. Agregamos el producto a nuestro carrito de compras
6. Completamos todos los datos para el envío
7. Realizamos el pago
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;En esta analogía, nuestro objetivo, "Comprar un producto online", es nuestra traza, y cada uno de los pasos ejecutados son nuestros tramos. Entonces podemos entender que una traza es el período de tiempo que nos toma ejecutar una tarea específica, y los tramos son todos los pasos que debemos completar dentro de esa tarea.&lt;/p&gt;

&lt;p&gt;Ahora bien, hay algo importante que vale la pena aclarar: &lt;strong&gt;un tramo puede a su vez dividirse en tramos más pequeños&lt;/strong&gt;. Es decir, un paso que a simple vista parece una sola acción, en realidad puede esconder varias operaciones internas, cada una con su propio tiempo de ejecución.&lt;/p&gt;

&lt;p&gt;Tomemos el paso 2 de nuestro ejemplo, "iniciar sesión". Aunque para nosotros como usuarios es un solo clic, por dentro el sistema en realidad ejecuta varias operaciones más pequeñas para completar ese paso:&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Fiuubxtp6g0w7wd85zd0x.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Fiuubxtp6g0w7wd85zd0x.png" alt="Tramos anidados" width="463" height="359"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Aquí, "Iniciar Sesión" sigue siendo un tramo dentro de nuestra traza general de "Comprar un producto online", pero al mismo tiempo funciona como el contenedor de otros tramos más pequeños (validar usuario, comprobar contraseña, cargar datos, mostrar perfil). A esto se le llama &lt;strong&gt;anidación de tramos&lt;/strong&gt;, y es lo que nos permite bajar de nivel: no solo saber que "iniciar sesión" tomó 10 ms, sino exactamente en qué parte de ese proceso se fueron esos 10 ms.&lt;/p&gt;

&lt;p&gt;Esta información nos permite entender realmente el funcionamiento de nuestras aplicaciones y nos ayuda a incorporar mejoras y ajustes en donde fuese necesario.&lt;/p&gt;

&lt;p&gt;En ingeniería de sistemas, las trazas y los tramos nos permiten entender cuánto tiempo toma nuestra aplicación en cada uno de los sub-procesos y así descubrir cuellos de botella o fallos específicos.&lt;/p&gt;

&lt;p&gt;Ahora que hemos entendido de manera general cómo funcionan los 3 pilares de la observabilidad, podemos responder muchas preguntas sobre el estado real de nuestras aplicaciones. Por ejemplo, digamos que recibimos una alerta diciendo que nuestro sitio web está cargando muy lento para los usuarios. Con nuestro sistema de observabilidad pudiéramos:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Ver cuál es el porcentaje de carga en CPU y memoria de nuestro servidor&lt;/li&gt;
&lt;li&gt;Qué información está reportando nuestro servicio web&lt;/li&gt;
&lt;li&gt;Cuánto tiempo está tomando la aplicación en responder una petición&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Esto nos da una imagen mucho más profunda y detallada de toda la aplicación, y nos permite entender rápidamente dónde está el fallo.&lt;/p&gt;

&lt;p&gt;En el &lt;a href="https://dev.to/jeisonarenales/construye-tu-primer-sistema-de-observabilidad-con-prometheus-y-grafana-2nh3"&gt;próximo capítulo&lt;/a&gt; vamos a monitorear las métricas de un servidor real usando Grafana y Prometheus.&lt;/p&gt;

&lt;p&gt;Coméntame si conocías todas estas señales y si puedes describir otras analogías para explicarlas. Cuéntamela en los comentarios 👇&lt;/p&gt;

&lt;p&gt;Sígueme aquí en &lt;a href="https://dev.to/jeisonarenales"&gt;dev.to&lt;/a&gt; para no perderte los próximos artículos de la serie; voy publicando uno a la vez, sin relleno.&lt;/p&gt;

&lt;p&gt;Happy Learning 🚀&lt;/p&gt;

</description>
      <category>observability</category>
      <category>opentelemetry</category>
      <category>devops</category>
      <category>beginners</category>
    </item>
    <item>
      <title>¿Qué es la Observabilidad? Explicada con un restaurante</title>
      <dc:creator>Jeison Arenales</dc:creator>
      <pubDate>Mon, 17 Aug 2026 19:49:09 +0000</pubDate>
      <link>https://dev.to/jeisonarenales/que-es-la-observabilidad-explicada-con-un-restaurante-1ebp</link>
      <guid>https://dev.to/jeisonarenales/que-es-la-observabilidad-explicada-con-un-restaurante-1ebp</guid>
      <description>&lt;p&gt;Desde hace un tiempo he querido empezar a compartir el conocimiento que he adquirido a lo largo de mi carrera profesional. He decidido empezar este viaje explicando un tema que considero muy importante hoy en día: la Observabilidad de nuestros sistemas informáticos. Es un largo camino por recorrer, pero me gustaría empezar desde lo más básico e ir incorporando conceptos a medida que avanzamos y consolidamos bases sólidas.&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;&lt;strong&gt;Observabilidad:&lt;/strong&gt; Es la capacidad de comprender el estado o la condición interna de un sistema complejo basándose únicamente en el conocimiento de sus salidas externas, específicamente su telemetría. &lt;a href="https://www.ibm.com/think/topics/observability" rel="noopener noreferrer"&gt;IBM&lt;/a&gt;&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;Primero que nada, expliquemos qué es la telemetría. Básicamente, la telemetría no es más que toda esa información que un sistema va dejando sobre lo que hace: métricas, logs, trazas.&lt;/p&gt;

&lt;p&gt;Leyendo el concepto de Observabilidad, probablemente todavía queden algunas dudas de cómo funciona; entonces, veámoslo desde otro punto de vista más entendible para nosotros. Imaginemos por un momento un restaurante famoso en nuestra ciudad en el cual vamos a disfrutar de nuestro plato favorito. Desde nuestro punto de vista, nosotros quisiéramos saber si:&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;El restaurante está abierto el día de hoy&lt;/li&gt;
&lt;li&gt;Cuánto tardan aproximadamente en preparar nuestro plato favorito&lt;/li&gt;
&lt;li&gt;Si el plato que ordené llegó correctamente&lt;/li&gt;
&lt;li&gt;Si puedo usar mi método de pago en el restaurante&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;Entre otras cosas. Todo eso que el cliente quiere saber es fácil de ver desde afuera — pero el dueño necesita algo más: &lt;strong&gt;cuando haya un problema, quiere saber exactamente por qué se originó&lt;/strong&gt; y cómo podría solucionarlo.&lt;/p&gt;

&lt;p&gt;Por ejemplo: un día un cliente se queja:&lt;/p&gt;

&lt;p&gt;"Llevo 40 minutos esperando mi comida."&lt;/p&gt;

&lt;p&gt;El dueño mira el salón y ve que hay pocos clientes. Entonces se pregunta:&lt;/p&gt;

&lt;p&gt;¿El cocinero está tardando demasiado? ¿Se acabó algún ingrediente? ¿Hay demasiados pedidos en la cocina? ¿El camarero olvidó el pedido? ¿La caja está teniendo problemas? ¿El proveedor no entregó los ingredientes?&lt;/p&gt;

&lt;p&gt;El restaurante funciona, pero el dueño no puede explicar qué está ocurriendo dentro. Esto es exactamente el problema que la observabilidad intenta resolver en un sistema de software.&lt;/p&gt;

&lt;p&gt;Digamos que el dueño decide empezar a instalar un sistema que le permita monitorear el estado de su restaurante, entonces instala algunos indicadores como:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Clientes: 120&lt;/li&gt;
&lt;li&gt;Pedidos: 80&lt;/li&gt;
&lt;li&gt;Tiempo promedio: 25 min&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Esto es &lt;strong&gt;monitorización&lt;/strong&gt;. Ya sabe que algo está pasando: "el tiempo promedio de preparación aumentó de 10 a 25 minutos." Mucho mejor. Pero todavía tiene una pregunta: ¿por qué?&lt;/p&gt;

&lt;p&gt;Entonces el dueño decide implementar un sistema de observabilidad que le permita comprender el estado de su restaurante. Ahora el restaurante registra mucho más contexto. Su flujo de trabajo se registra de la siguiente manera:&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Fb8wqw3wsfpiv01tw779y.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Fb8wqw3wsfpiv01tw779y.png" alt="Flujo de trabajo" width="600" height="542"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Por lo tanto, el dueño puede saber la siguiente información:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;Pedido recibido:       12:01:02
Cocina inició:         12:01:05
Hamburguesa lista:     12:08:31
Papas listas:          12:18:42
Pedido entregado:      12:19:01
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;Ahora el dueño puede descubrir: "Las hamburguesas están saliendo normalmente, pero las papas están tardando 10 minutos adicionales porque la freidora está saturada."&lt;/p&gt;

&lt;p&gt;Eso es mucho más cercano a la observabilidad y a cómo puede ayudarnos a comprender el estado actual de nuestro sistema.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;En resumen:&lt;/strong&gt; la monitorización te dice qué está pasando; la observabilidad te ayuda a entender por qué está pasando. Ese salto —de ver números a entender causas— es el corazón de todo lo que viene en esta serie.&lt;/p&gt;

&lt;p&gt;En la &lt;a href="https://dev.to/jeisonarenales/metricas-logs-y-trazas-los-3-pilares-de-la-observabilidad-explicados-sin-jerga-15o9"&gt;próxima publicación&lt;/a&gt; vamos a entrar de lleno en los 3 pilares de la observabilidad: métricas, logs y trazas. Si te ha servido esta forma de explicarlo o tienes tu propia analogía favorita para observabilidad, cuéntamela en los comentarios. 👇&lt;/p&gt;

&lt;p&gt;Sígueme aquí en &lt;a href="https://dev.to/jeisonarenales"&gt;dev.to&lt;/a&gt; para no perderte los próximos artículos de la serie; voy publicando uno a la vez, sin relleno.&lt;/p&gt;

&lt;p&gt;Happy Learning 🚀&lt;/p&gt;

</description>
      <category>observability</category>
      <category>monitoring</category>
      <category>beginners</category>
      <category>learning</category>
    </item>
  </channel>
</rss>
