Esta página describe Calíope 1.5, la versión que estamos construyendo ahora mismo. La 1.4 está terminada y en revisión de App Store, y la tienda sirve hoy la 1.3 en el Mac y la 1.2 en iPad. El changelog dice en qué versión llegó cada función.
Añade un botón «Abrir en Calíope» a cada tema. Sólo funciona con la app instalada.
Recopila y visualiza métricas históricas de uno o más de tus servidores: QPS, hilos, tasa de acierto de caché, red, DML y más. Los datos se almacenan en un servidor centralizado que eliges tú y están disponibles aunque cierres la app.
Dónde está: Espacio de Trabajo › Herramientas › Salud
El Monitor de salud permite supervisar el rendimiento de varios de tus servidores a lo largo del tiempo. A diferencia del Tablero (que muestra métricas en tiempo real del servidor actualmente conectado), el Monitor de salud almacena snapshots históricos en un almacén centralizado, accesibles desde cualquier sesión y compartidos entre miembros del equipo.
Arquitectura:
- Servidor de almacenamiento — un servidor donde Calíope crea el almacén caliope_monitoring con las tablas de snapshots. En MySQL y MariaDB es una base de datos; en PostgreSQL es un esquema dentro de la base a la que apunta el perfil, así que dos perfiles del mismo servidor que apunten a bases distintas son dos almacenes distintos. Debe ser accesible para todos los usuarios que quieran consultar el historial.
- Servidores monitoreados — los servidores de los que se recopilan métricas. Pueden ser distintos al servidor de almacenamiento.
- Motor de monitoreo — se ejecuta en segundo plano desde el momento en que arranca la app; no es necesario tener abierta la pestaña para que el monitoreo funcione.
Configuración inicial:
1. Abre la pestaña Monitor de salud desde la barra de navegación del workspace (ícono de corazón).
2. Pulsa el ícono engranaje (⚙) para abrir la configuración.
3. Activa el interruptor Habilitar monitoreo en la parte superior del panel. Puedes desactivarlo en cualquier momento para detener por completo la recopilación de métricas sin perder la configuración.
4. En Servidor de almacenamiento, selecciona un perfil de conexión existente y pulsa Provisionar. Calíope crea automáticamente el almacén caliope_monitoring y todas las tablas necesarias. El usuario debe tener privilegio CREATE en el servidor seleccionado.
5. En Servidores monitoreados, pulsa + para agregar cada servidor que deseas supervisar. Por cada servidor puedes definir:
- Alias — nombre amigable para identificarlo en las gráficas.
- Intervalo — frecuencia de recopilación: 15 s, 30 s, 1 min (defecto), 5 min, 15 min, 30 min o 1 hora.
- Activo — toggle para pausar el monitoreo de un servidor sin eliminarlo.
6. En Retención, elige cuántos días conservar los datos (7, 14, 30, 60, 90 o 180 días). El valor «Sin límite» conserva todos los datos indefinidamente.
7. Cierra la configuración. El motor arranca automáticamente si el monitoreo está habilitado.
Funcionamiento en segundo plano:
El monitoreo continúa mientras la app esté abierta, independientemente de qué pestaña tengas activa. Si cierras y reabres la app, el motor se reinicia automáticamente al arrancar.
Visualización:
- Selecciona el servidor en el selector de la barra superior para ver sus métricas.
- Elige el rango temporal: 1 h, 6 h, 24 h, 7 d o 30 d.
- Los indicadores de estado del motor (punto verde/amarillo/rojo) muestran si el monitoreo está activo, iniciando o sin conexión al servidor de almacenamiento.
- El botón ↻ recarga los datos manualmente desde el servidor de almacenamiento.
- El botón ⏱ (reloj con flecha) activa la auto-actualización cada 30 segundos: las gráficas se recargan automáticamente sin necesidad de pulsar ↻. En macOS aparece la etiqueta 30 s junto al ícono cuando está activo. Desactívalo si quieres una vista estática para inspeccionar los datos sin que cambien.
Disponible en macOS, iPad e iPhone.
Palabras clave: monitor de salud, health monitor, monitoreo, métricas, historial, snapshots, almacenamiento, caliope_monitoring, provisionar, intervalo, retención, segundo plano, background, servidor monitoreado, qps, caché, innodb, habilitar, deshabilitar, activar, desactivar, auto-actualizar, auto-refresco, 30 segundos
Descripción de cada gráfica: hilos conectados, QPS, tasa de acierto de caché, procesos activos, red (bytes/s) y DML por segundo.
Dónde está: Espacio de Trabajo › Herramientas › Salud
El monitor muestra seis gráficas de serie temporal, cada una con área de relleno y línea para facilitar la lectura de tendencias. Puedes tocar o hacer clic en cualquier punto de la gráfica para ver el valor exacto en ese instante.
Hilos conectados
Número de conexiones abiertas en ese momento. Un valor cercano al límite max_connections indica riesgo de saturación.
QPS — Queries por segundo
Tasa de consultas ejecutadas por segundo, calculada como la diferencia de Queries entre snapshots consecutivos dividida por el intervalo. Refleja la carga general del servidor.
Tasa de acierto de caché (%)
Porcentaje de peticiones de lectura servidas desde la caché del servidor sin bajar a disco. Se calcula como:
(1 − Δ lecturas de disco / Δ peticiones de lectura) × 100
Cada motor publica esos dos contadores con sus propios nombres, y el servidor que no publique ninguno deja la gráfica vacía.
Un valor sostenido por debajo del 95% indica que la caché es insuficiente para la carga de trabajo y conviene aumentarlo.
Procesos activos
Número de consultas en ejecución en ese instante (SHOW PROCESSLIST, excluyendo hilos en estado Sleep). Un valor elevado y persistente sugiere consultas lentas o bloqueos.
Red (bytes/s)
Tráfico de red hacia y desde el servidor:
- RX — bytes recibidos por segundo (Bytes_received).
- TX — bytes enviados por segundo (Bytes_sent).
Útil para detectar consultas que transfieren volúmenes anormalmente grandes de datos.
DML / s — Sentencias de modificación
Tasa de sentencias DML por segundo, desglosada en:
- SELECT — lecturas.
- INSERT — inserciones.
- UPDATE — actualizaciones.
- DELETE — eliminaciones.
Un aumento repentino en INSERT/UPDATE/DELETE puede indicar procesos batch o ETL activos.
Interpretación general:
- Las gráficas muestran valores calculados a partir de los contadores acumulados del servidor, por lo que representan tasas por segundo, no totales absolutos.
- No todos los motores publican todos los contadores. Lo que un servidor no mide se guarda vacío y su gráfica queda en blanco: PostgreSQL, por ejemplo, no cuenta el tráfico de red ni desglosa las sentencias por verbo, y su QPS cuenta transacciones en vez de sentencias.
- Los intervalos de muestreo cortos (15 s, 30 s) producen gráficas más detalladas pero generan más datos en el servidor de almacenamiento.
- La retención configurable (ver Monitor de salud de servidores) controla el período visible en el rango 30 d.
Palabras clave: hilos conectados, threads_connected, qps, queries por segundo, tasa de acierto de caché, innodb hit rate, buffer pool, procesos activos, processlist, bytes_received, bytes_sent, com_select, com_insert, com_update, com_delete, dml, red, throughput, serie temporal, gráfica, métricas
Cómo activar el monitoreo, elegir el servidor de almacenamiento, añadir servidores monitoreados y ajustar la retención.
Dónde está: Monitor de salud › Configurar
El Monitor de salud de Calíope conserva un historial de métricas tomadas periódicamente contra tus servidores. Ese historial vive en un schema propio, caliope_monitoring, alojado en un servidor que tú eliges — no en la app.
Abrir el diálogo de configuración
- macOS: menú Ventana › Monitor de salud › Configurar… o botón ⚙︎ en la barra superior de la vista Monitor de salud.
- iPad: en la pestaña Monitor de salud, pulsa el botón ⚙︎ de la barra superior.
1. Habilitar el monitoreo
- Toggle en la cabecera del diálogo. Al activarlo, MonitoringEngine arranca en segundo plano; al desactivarlo, se detiene.
2. Servidor de almacenamiento
- Elige, en el picker agrupado, cuál de tus perfiles hospedará el schema caliope_monitoring.
- Puede ser el mismo servidor que monitoreas o uno dedicado (recomendado para producción).
- Pulsa Provisionar para que Calíope cree el almacén y las tablas necesarias — es idempotente (usa CREATE … IF NOT EXISTS), así que puedes repetirlo con seguridad si borraste algo manualmente.
- Estado visual: Provisionado ✓ en verde cuando funciona, o etiqueta roja con el error si la conexión falla.
Tablas creadas
- caliope_monitoring.monitoring_config — versión de schema, retención y timestamp de la última limpieza.
- caliope_monitoring.monitored_servers — servidores registrados como monitoreados.
- caliope_monitoring.server_snapshots — snapshots temporales (uptime, threads, caché, sentencias por verbo, tráfico, procesos activos, longest query, etc.).
- caliope_monitoring.collection_errors — errores de recolección, útiles para diagnosticar.
3. Servidores monitoreados
- Botón + para añadir uno. Selecciona el perfil, dale un alias legible y elige el intervalo de sondeo (15 s, 30 s, 1 min, 5 min, etc.).
- Cada fila tiene un toggle para habilitar/deshabilitar sin borrar la configuración, y un botón − para eliminarla.
- El servidor de almacenamiento no se puede añadir a sí mismo como monitoreado.
4. Retención
- Dropdown con presets (7, 14, 30, 60 días, etc.).
- El valor 0 significa "no borrar nunca" y muestra un aviso naranja — recuerda que server_snapshots crece con cada tick.
- La limpieza corre en cada arranque del engine y a intervalos regulares durante la sesión.
Notas de seguridad
- Todas las conexiones al servidor de almacenamiento usan las mismas credenciales guardadas en el Llavero para ese perfil (Keychain sync opcional).
- Al eliminar la app o pulsar Eliminar todos mis datos, la app deja de escribir; las tablas caliope_monitoring.* permanecen en el servidor hasta que las borres manualmente (DROP DATABASE caliope_monitoring;).