
Kein Pulse
Monitoreo de servicios en tiempo real para northernbytes
App móvil que utiliza una API privada sobre Uptime Kuma para monitorear los servicios de northernbytes desde cualquier lugar
App móvil que utiliza una API privada sobre Uptime Kuma para monitorear los servicios de northernbytes desde cualquier lugar
La aplicación utiliza Uptime Kuma Beta 2 como base del sistema de monitorización. Esta infraestructura permite la detección de caídas de servicio y el seguimiento de métricas de rendimiento.
A diferencia de las versiones anteriores donde Uptime Kuma generaba su propia base de datos SQL de manera interna, la versión Beta 2 permite conectar directamente con una base de datos externa MySQL, lo que facilita la integración y el acceso a los datos.
Se ha desarrollado una API REST que consume los datos directamente de la base de datos de Uptime Kuma. Este enfoque permite la independencia entre la interfaz móvil y el backend de monitoreo, facilitando actualizaciones en ambos sistemas.
Uptime Kuma Beta 2 introduce cambios en la arquitectura del sistema de monitoreo. Esta versión implementa modificaciones en la gestión de datos que sirven como base para el desarrollo de Kein Pulse.
La versión Beta 2 sustituye el sistema de base de datos SQLite por la compatibilidad con MySQL. Este cambio permite el acceso directo a los datos de monitorización desde aplicaciones externas, permitiendo la implementación de la API utilizada por Kein Pulse.
La reorganización del esquema de datos facilita la creación de interfaces programáticas externas. En el caso de Kein Pulse, se desarrolló una API REST que consulta directamente la base de datos MySQL para obtener información sobre los servicios monitorizados.
Uptime Kuma admite diversos protocolos de monitorización (HTTP, TCP, DNS, Ping) con intervalos configurables desde 1 segundo. La API de Kein Pulse implementa métodos para acceder a estos datos y transmitirlos a la aplicación móvil de forma eficiente.
Tables_in_uptimekuma |
---|
user |
tag |
monitor |
monitor_tag |
monitor_tls_info |
heartbeat |
stat_daily |
stat_hourly |
stat_minutely |
La aplicación Kein Pulse está construida usando SwiftUI y Swift Concurrency, aprovechando las últimas tecnologías de Apple para ofrecer una experiencia fluida y moderna.
Con async/await y llamadas a la API optimizadas, la aplicación muestra actualizaciones en tiempo real del estado de tus servicios con mínimo consumo de batería y recursos del dispositivo.
La aplicación implementa un sistema de notificaciones push nativas para alertar sobre cambios de estado en los servicios. El proyecto también incluye widgets para iOS que permiten la visualización de monitores críticos directamente desde la pantalla de inicio.
La conexión con la API está protegida mediante JWT, garantizando que solo usuarios autorizados puedan acceder a la información de monitorizacion. Además, es compatible con autenticación biométrica para mayor comodidad.