Panel de monitorización web Console Light#

Angie ofrece una amplia gama de posibilidades para monitorizar su funcionamiento; además de la API de métricas y el módulo Prometheus, puede utilizar una consola visual que se instala junto al servidor.

Console Light#

Console Light es una interfaz ligera de monitorización de actividad en tiempo real que muestra métricas clave de carga y rendimiento del servidor. La consola se basa en las capacidades de API de Angie; los datos de monitorización de actividad se generan en tiempo real. Además, la consola permite modificar dinámicamente la configuración de Angie donde la propia API proporciona esta capacidad.

Ejemplo de una consola desplegada y configurada: https://console.angie.software/

Historial de versiones#

Versión

Fecha de lanzamiento

Cambios

1.8.0

03.07.2025

Visualización de métricas de tiempo de respuesta para servidores HTTP y TCP/UDP a través de un proxy

1.7.2

07.04.2025

Añadida opción "busy" en el controlador de filtros de las páginas "HTTP/TCP/UDP Upstreams".

1.7.1

04.04.2025

Corregidos valores incorrectos en las tablas "HTTP/Location Zones" en la página "HTTP Zones".

1.7.0

02.04.2025

  • Muestra volúmenes exactos de datos en bytes al pasar el ratón

  • Nuevo estado busy para los peers de upstream en la API de estadísticas, indicando que un peer ha alcanzado el límite configurado por el parámetro max_conns

  • Enlaces de documentación corregidos

1.6.1

27.01.2025

  • Corregidos errores tipográficos

  • Solucionado un problema de compilación del proyecto durante el desarrollo

1.6.0

23.01.2025

  • Soporte de internacionalización con locales disponibles: en, ru.

  • Función de encabezado fijo añadida al componente de tabla.

  • Soporte para unidades de medida de datos en pebibytes (PiB).

  • Corregido el contador de valores incorrecto en el widget HTTP Upstreams en la página principal.

  • Los valores predeterminados ahora se utilizan correctamente en la página HTTP Upstreams en el contexto de respuesta.

1.5.0

No publicada públicamente.

1.4.0

08.08.2024

Añadida visualización del estado de monitorización en el favicon del sitio web.

1.3.0

28.04.2024

Añadida la capacidad de establecer un servidor en el estado draining en el contexto de upstream.

1.2.1

26.12.2023

Añadidos controles de salud activos en el contexto Stream.

1.2.0

25.12.2023

Añadida edición de servidor en el contexto Stream.

Instalación y configuración#

Console Light se publica como paquetes angie-console-light (Angie) y angie-pro-console-light (Angie PRO) en nuestros repositorios y puede instalarse como cualquier otro paquete; alternativamente, puede descargar el código fuente desde nuestro sitio web o GitHub.

Después de la instalación, configure la consola añadiendo la siguiente location dentro de un bloque server en la configuración del servidor (observe los comentarios):

location /console/ {

    # Solo acceso local
    allow 127.0.0.1;
    deny all;

    auto_redirect on;

    alias /usr/share/angie-console-light/html/;
    # Solo FreeBSD:
    # alias /usr/local/www/angie-console-light/html/;
    index index.html;

    location /console/api/ {
        api /status/;
    }

    # Para que las funciones de edición funcionen después de la autenticación (solo PRO)
    location /console/api/config/ {

        auth_basic           "Protected site";
        auth_basic_user_file conf/htpasswd;

        api /config/;
    }
}

No olvide aplicar la configuración modificada:

$ sudo angie -t && sudo service angie reload

Después de esto, la consola estará disponible en el servidor especificado por el bloque server, en la ruta especificada para la location; en el ejemplo anterior, la ruta se establece como /console/.

La autenticación puede habilitarse para cualquier sección de la API de manera similar al ejemplo anterior, por ejemplo:

location /console/server_zones/ {
    auth_basic           "Protected site";
    auth_basic_user_file conf/htpasswd;
}

También puede restringir el acceso a cualquier sección de la consola configurada location, por ejemplo:

location /console/api/resolvers/ {
    deny all;
}

Interfaz#

La consola es una única pantalla con un conjunto de pestañas, cada una conteniendo varios widgets con datos de monitorización.

Truco

En las secciones siguientes, los elementos de la interfaz se describen de izquierda a la derecha.

Pestaña Angie#

Console Light - pantalla principal


Esta es la pestaña principal donde se muestran los indicadores clave de monitorización de Angie en forma resumida, basados en datos de varias secciones de la API.

Widget About#

Muestra el número de versión de Angie con un enlace a la documentación correspondiente, así como la dirección del servidor y la hora del último recarga de configuración.

Además, si la directiva api_config_files está habilitada, el enlace Configs abre una lista de archivos de configuración cargados en el servidor. Cada archivo puede verse en un formato compacto con resaltado de sintaxis.

Widget Connections#

Muestra estadísticas básicas de conexión del servidor, generadas desde la sección de API /status/connections/:

Current

Número actual de conexiones

Accepted/s

Número de conexiones aceptadas por segundo

Active

Número de conexiones activas

Idle

Número de conexiones inactivas

Dropped

Número de conexiones descartadas

También disponible:

Accepted

Número total de conexiones aceptadas desde la última recarga del servidor

Widget HTTP Zones#

Advertencia

Requiere configurar la directiva status_zone en un contexto server o location.

Muestra estadísticas de zonas de memoria compartida para el contexto http, generadas desde la sección de API /status/http/server_zones/:

Total

Número total de zonas

Problems

Número de zonas con cualquier problema

Traffic

Volumen total de tráfico entrante y saliente

HTTP Upstreams Widget#

Advertencia

Requiere configurar la directiva zone en un bloque upstream en el contexto http.

Muestra estadísticas de upstream para el contexto http, generadas a partir de la sección de la API /status/http/upstreams/:

Total

Número total de upstreams

Problems

Número de upstreams con cualquier problema

Servers

Estadísticas de servidores desglosadas por estado

TCP/UDP Zones Widget#

Advertencia

Requiere configurar las siguientes directivas:

Ejemplo:

stream {

    # ...
    limit_conn_zone $connection zone=limit-conn-stream:10m;

    server {

        # ...
        limit_conn limit-conn-stream 1;
        status_zone foo;
    }
}

Muestra estadísticas de zonas de memoria compartida para el contexto stream, generadas desde la sección de la API /status/stream/server_zones/:

Conn total

Número total de conexiones de clientes

Conn current

Número actual de conexiones de clientes

Conn/s

Número de conexiones procesadas por segundo

TCP/UDP Upstreams Widget#

Advertencia

Requiere configurar la directiva zone en un bloque upstream en el contexto stream.

Muestra estadísticas de upstream para el contexto stream, generadas desde la sección de la API /status/stream/upstreams/:

Total

Número total de upstreams

Problems

Número de upstreams con cualquier problema

Servers

Estadísticas de servidores desglosadas por estado

HTTP Zones Tab#

Advertencia

Requiere configurar la directiva status_zone en un contexto server o location.

Server Zones Section#

Console Light — "Server Zones" section on the "HTTP Zones" tab


Resume las estadísticas de monitorización de zonas de memoria compartida para el contexto server en http, generadas desde la sección de la API /status/http/server_zones/. Se presentan los siguientes datos para cada zona:

Zone

Nombre de la zona

Truco

Haga clic en la flecha junto a Zone para ordenar las zonas alfabéticamente o por orden de configuración.

Requests

Número total de solicitudes y el número de solicitudes por segundo

Responses

Número de respuestas desglosadas por códigos de estado, así como su número total

Traffic

Tasas de tráfico saliente y entrante, así como volúmenes totales de tráfico saliente y entrante

SSL

Recuentos agregados de: handshakes SSL exitosos; reutilización de sesiones SSL; handshakes SSL con tiempo de espera expirado; handshakes SSL fallidos

Location Zones Section#

Console Light — "Location Zones" section on the "HTTP Zones" tab


Resume las estadísticas de monitorización de zonas de memoria compartida para el contexto location en http, generadas desde la sección de la API /status/http/location_zones/:. Se presentan los siguientes datos para cada zona:

Zone

Nombre de la zona

Truco

Haga clic en la flecha junto a Zone para ordenar las zonas alfabéticamente o por orden de configuración.

Requests

Número total de solicitudes y el número de solicitudes por segundo

Responses

Número de respuestas desglosadas por códigos de estado, así como su número total

Traffic

Tasas de tráfico saliente y entrante, así como volúmenes totales de tráfico saliente y entrante

Connection Limit Zones (Limit Conn) Section#

Console Light — "Connection Limit Zones" section on the "HTTP Zones" tab


Muestra estadísticas de zonas limit_conn en el contexto http, generadas desde la sección de la API /status/http/limit_conns/. Se presentan los siguientes datos para cada zona:

Zone

Nombre de la zona

Truco

Haga clic en el icono junto a Zone para abrir o cerrar el gráfico con los siguientes indicadores.

Passed

Número total de conexiones proxy

Rejected

Número total de conexiones rechazadas

Exhausted

Número total de conexiones descartadas debido al desbordamiento del almacenamiento de la zona

Skipped

Número total de conexiones pasadas con una clave de cero o mayor que 255 bytes

Request Limit Zones (Limit Req) Section#

Console Light — "Request Limit Zones" section on the "HTTP Zones" tab


Muestra estadísticas de las zonas limit_reqs en el contexto http, generadas desde la sección de la API /status/http/limit_reqs/:. Se presentan los siguientes datos para cada zona:

Zone

Nombre de la zona

Truco

Haga clic en el icono junto a Zone para abrir o cerrar el gráfico con los siguientes indicadores.

Passed

Número total de conexiones proxy

Delayed

Número total de conexiones retrasadas

Rejected

Número total de conexiones rechazadas

Exhausted

Número total de conexiones descartadas debido al desbordamiento del almacenamiento de la zona

Skipped

Número total de conexiones pasadas con una clave de cero o mayor que 255 bytes

HTTP Upstreams Tab#

Console Light — "HTTP Upstreams" tab


Advertencia

Requiere configurar la directiva zone en un bloque upstream en el contexto http.

Esta pestaña resume las estadísticas de monitorización de upstreams para el contexto http, generadas desde la sección de la API /status/http/upstreams/.

  • El botón Show upstreams list muestra/oculta una lista breve de upstreams con el número de upstreams y pares problemáticos.

  • El interruptor Failed only alterna el modo de visualización para las estadísticas de upstreams problemáticos.

  • El botón de edición activa la interfaz de edición de upstream.

  • La lista desplegable en el lado derecho de cada tabla de upstream permite filtrar servidores en un estado específico (Up, Failed, Checking, Down).

Para cada upstream, además de su nombre y la proporción de utilización de la zona de memoria compartida, se presentan los siguientes datos:

Server

Nombres, tiempos de inactividad y pesos de los servidores upstream

Truco

Haga clic en la flecha junto a Server para ordenar los servidores por su estado o por orden de configuración.

Requests

Número total y tasa de procesamiento de solicitudes

Responses

Número de respuestas desglosadas por códigos de estado

Connections

Número de conexiones activas y su límite máximo, si está establecido

Traffic

Tasas de tráfico saliente y entrante, así como volúmenes totales de tráfico saliente y entrante

Server checks

Número de intentos fallidos para contactar con el servidor y el número de veces que el servidor fue considerado no disponible (el objeto health en la API)

Health monitors

Número total de comprobaciones del servidor, número de comprobaciones fallidas y la hora de la última comprobación

Response time

Tiempo desde el inicio de la solicitud hasta enviar el primer byte de la respuesta; tiempo total desde el inicio de la solicitud hasta completar el envío de toda la respuesta (objeto health en la API)

Edición de upstreams#

En Angie PRO, hay un botón de edición junto a cada upstream; al hacer clic, muestra dos botones más:

Editar seleccionados

Editar los servidores seleccionados dentro de un upstream. Permite establecer los siguientes parámetros para todos a la vez: Weight, límite máximo de conexiones (Max_conns), límite máximo de fallos que marca un servidor como no disponible (Max_fails), ventana de tiempo para contar fallos para el límite máximo de fallos (Fail_timeout), estado (active – habilitado, down – deshabilitado, o draining – solo recibe solicitudes de sesiones previamente vinculadas a través de sticky).

También puedes eliminar los servidores seleccionados aquí.

Console Light — editando servidores en la pestaña "HTTP Upstreams"


Añadir servidor

Añadir un servidor al upstream. Permite establecer los siguientes parámetros: dirección, servidor de respaldo o no, Weight, límite máximo de conexiones (Max_conns), límite máximo de fallos que marca un servidor como no disponible (Max_fails), ventana de tiempo para contar fallos (Fail_timeout), estado (active – habilitado, down – deshabilitado, o draining – solo recibe solicitudes de sesiones previamente vinculadas a través de sticky).

Console Light — añadiendo un servidor en la pestaña "HTTP Upstreams"


Pestaña TCP/UDP Zones#

Advertencia

Requiere configurar las siguientes directivas:

Ejemplo:

stream {

    # ...
    limit_conn_zone $connection zone=limit-conn-stream:10m;

    server {

        # ...
        limit_conn limit-conn-stream 1;
        status_zone foo;
    }
}

Sección TCP/UDP Zones#

Console Light — pestaña "TCP/UDP Zones"


Resume las estadísticas de monitorización de zonas de memoria compartida para el contexto server en stream, generadas desde la sección de API /status/stream/server_zones/. Se presentan los siguientes datos para cada zona:

Zone

Nombre de la zona

Connections

Número actual y total de conexiones, así como el número de conexiones por segundo

Sessions

Número de sesiones desglosadas por códigos de estado, así como su número total

Traffic

Tasas de tráfico saliente y entrante, así como volúmenes totales de tráfico saliente y entrante

SSL

Recuentos agregados de: handshakes SSL exitosos; handshakes SSL fallidos; reutilización de sesiones SSL

Sección Connection Limit Zones (Limit Conn)#

Console Light — sección "Connection Limit Zones" en la pestaña "TCP/UDP Zones"


Muestra estadísticas de zonas limit_conn en el contexto stream, generadas desde la sección de API /status/stream/limit_conns/. Se presentan los siguientes datos para cada zona:

Zone

Nombre de la zona

Truco

Haz clic en el icono junto a Zone para abrir o cerrar el gráfico con los siguientes indicadores.

Passed

Número total de conexiones proxy

Rejected

Número total de conexiones rechazadas

Exhausted

Número total de conexiones descartadas debido al desbordamiento del almacenamiento de la zona

Skipped

Número total de conexiones pasadas con una clave de cero o mayor a 255 bytes

Pestaña TCP/UDP Upstreams#

Console Light — pestaña "TCP/UDP Upstreams"


Advertencia

Requiere configurar la directiva zone en un bloque upstream en el contexto stream.

Esta pestaña resume las estadísticas de monitorización de upstreams para el contexto stream, generadas desde la sección de API /status/stream/upstreams/.

  • El botón Show upstreams list alterna la visualización de una lista breve de upstreams con el número de upstreams y pares problemáticos.

  • El interruptor Failed only habilita y deshabilita el modo de visualización para estadísticas de upstreams problemáticos.

  • El botón de edición abre el widget de edición de upstreams.

  • La lista desplegable en el lado derecho de cada tabla de upstream te permite filtrar servidores en un estado específico (Up, Failed, Checking, Down).

Para cada upstream, se presentan los siguientes datos:

Server

Nombres, tiempos de inactividad y pesos de los servidores upstream

Truco

Haz clic en la flecha junto a Server para ordenar los servidores por su estado o por orden de configuración.

Connections

Número de conexiones activas y su límite máximo, si está establecido

Traffic

Tasas de tráfico saliente y entrante, así como volúmenes totales de tráfico saliente y entrante

Server checks

Número de intentos fallidos de contactar con el servidor y el número de veces que el servidor fue considerado no disponible (el objeto health en la API)

Health monitors

Total de verificaciones de servidor, número de verificaciones fallidas y la hora de la última verificación

Response time

Tiempo dedicado a establecer una conexión con el backend; tiempo desde el inicio de la solicitud hasta recibir el primer byte de la respuesta; tiempo total transcurrido desde el inicio de la solicitud hasta recibir el último byte de la respuesta (el objeto health en la API)

Edición de upstreams#

En Angie PRO, hay un botón de edición junto a cada upstream; al hacer clic, muestra dos botones más:

Edit selected

Editar los servidores seleccionados dentro de un upstream. Permite establecer los siguientes parámetros para todos a la vez: Weight, límite máximo de conexiones (Max_conns), límite máximo de fallos que marca un servidor como no disponible (Max_fails), ventana de tiempo para contar fallos para el límite máximo de fallos (Fail_timeout), estado (active - habilitado, down - deshabilitado, o draining - solo recibe solicitudes de sesiones previamente vinculadas a través de sticky).

También puedes eliminar los servidores seleccionados aquí.

Console Light - editando servidores en la pestaña "TCP/UDP Upstreams"


Add server

Añadir un servidor al upstream. Permite establecer los siguientes parámetros: dirección, servidor de respaldo o no, Weight, límite máximo de conexiones (Max_conns), límite máximo de fallos que marca un servidor como no disponible (Max_fails), ventana de tiempo para contar fallos (Fail_timeout), estado (active - habilitado, down - deshabilitado, o draining - solo recibe solicitudes de sesiones previamente vinculadas a través de sticky).

Console Light - añadiendo un servidor en la pestaña "TCP/UDP Upstreams"


Pestaña Caches#

Console Light - pestaña "Caches"


Advertencia

Requiere configurar la directiva proxy_cache_path en el contexto http.

Esta pestaña resume las estadísticas de monitorización para las zonas proxy_cache en el contexto http, generadas desde la sección de API /status/http/caches/. Se presentan los siguientes datos para cada zona:

Zone

Nombre de la zona

Truco

Haz clic en el icono junto a Zone para abrir o cerrar las listas de fragmentos para todas las zonas que los tengan.

State

Estado de la caché: cold (metadatos cargándose en memoria) o hot (metadatos cargados)

Memory usage

Ratio de utilización de memoria

Max size

Tamaño máximo de memoria

Used

Tamaño de memoria utilizada

Disk usage

Ratio de utilización del disco

Traffic

Tráfico servido desde la caché, escrito en la caché y devuelto evitando la caché

Hit ratio

Ratio de aciertos de caché (proporción del tráfico servido desde la caché respecto al volumen total)

Si la fragmentación está habilitada para una zona, se muestra como una lista desplegable que enumera los fragmentos individuales:

Path

Ruta del fragmento en el disco

State

Estado del fragmento: cold (metadatos cargándose en memoria) o hot (metadatos cargados)

Max size

Tamaño máximo de memoria

Used

Tamaño de memoria utilizada

Disk usage

Ratio de utilización del disco

Pestaña Shared Zones#

Console Light - pestaña "Shared Zones"


Esta pestaña resume las estadísticas de monitorización para todas las zonas de memoria compartida en todos los contextos. Se presentan los siguientes datos para cada zona:

Zone

Nombre de la zona

Truco

Haz clic en la flecha junto a Zone para ordenar las zonas por tamaño o por orden de configuración.

Total memory pages

Número total de páginas de memoria

Used memory pages

Número de páginas de memoria utilizadas

Memory usage

Ratio de utilización de memoria para la zona

Pestaña DNS Resolvers#

Console Light - pestaña "Resolvers"


Advertencia

Requiere configurar la directiva resolver en el contexto http.

Esta pestaña resume las estadísticas de consultas en las zonas de memoria compartida DNS, generadas desde la sección de API /status/resolvers/. Se presentan los siguientes datos para cada zona:

Zone

Nombre de la zona

Truco

Haz clic en la flecha junto a Zone para ordenar las zonas por estado o por orden de configuración.

Requests

Número de solicitudes de tipo A y AAAA, SRV, PTR

Responses

Número de respuestas desglosadas por códigos correspondientes (Success, Format error, Server failure, Name error, Not implemented, Refused y otros)

Widget Settings#

Console Light - Widget "Configuración"


Permite configurar parámetros generales de la consola:

  • Frecuencia de actualización de datos. Valor predeterminado — 1 seg.

  • Ratio umbral para estados 4xx. Cuando se alcanza el umbral, aparecen advertencias "amarillas" en las secciones correspondientes relacionadas con las respuestas del servidor. Valor predeterminado — 7%.

  • Ventana de tiempo para calcular la proporción de aciertos de caché. Valor predeterminado — 300 seg.

  • Umbral de error para el resolver. Cuando se alcanza el umbral, el resolver se volverá "rojo". Valor predeterminado — 3%.

  • Idioma de la interfaz de la consola. Opciones disponibles: Inglés y Ruso. Por defecto, el idioma de la consola se selecciona según la configuración regional establecida en el navegador.

Panel de Control de la Consola#

En todas las pestañas, en la mitad del lado izquierdo de la página, hay un panel deslizante con dos botones Console Light - botones de control de la consola en la pestaña "Acerca de". El botón superior pausa y reanuda las actualizaciones de datos desde la API, mientras que el botón inferior permite actualizar los datos manualmente cuando las actualizaciones están pausadas.