service-monitor/docs/DIARIO_DESARROLLO.md
reugenio e2e19da32f Fase 1: Monitor básico HTTP/TCP funcionando
- Verificación HTTP/HTTPS con std.http.Client
- Verificación TCP con resolución DNS (tcpConnectToHost)
- 5 servicios configurados: Forgejo (HTTP+SSH), Simifactu, Mundisofa, Menzuri
- Output terminal con colores y tiempos de respuesta
- Doc comments en todas las funciones públicas (estándar open source)

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2025-12-07 20:43:34 +01:00

1.7 KiB

Diario de Desarrollo - service-monitor

2025-12-07 - Sesión 1: Inicio proyecto

Contexto

  • Proyecto nuevo: Monitor de servicios para servidor Hetzner (Simba)
  • Lenguaje: Zig 0.13.0
  • Objetivo: Herramienta ligera, sin dependencias externas, potencialmente open source

Implementado - Fase 1 Básica

Estructura creada:

service-monitor/
├── build.zig         # Sistema build Zig
├── CLAUDE.md         # Especificación proyecto
├── docs/             # Documentación
│   └── DIARIO_DESARROLLO.md
└── src/
    ├── main.zig      # Entry point + output terminal
    ├── http.zig      # Verificación HTTP/HTTPS (std.http.Client)
    ├── tcp.zig       # Verificación TCP (std.net)
    └── config.zig    # Lista servicios hardcoded

Servicios configurados:

  1. Forgejo HTTP - https://git.reugenio.com
  2. Forgejo SSH - git.reugenio.com:2222
  3. Simifactu API - https://simifactu.com
  4. Mundisofa - https://mundisofa.com
  5. Menzuri - https://menzuri.com

Detalles técnicos Zig 0.13:

  • std.http.Client.open() requiere server_header_buffer obligatorio
  • std.time.Timer debe ser var (no const) para llamar .read()
  • Output con colores ANSI: \x1b[32m verde, \x1b[31m rojo, \x1b[0m reset

Normas aplicadas:

  • Doc comments (///) en todas las funciones públicas
  • Código idiomático Zig (snake_case, error handling explícito)
  • Preparado para open source

Pendiente - Fases 2 y 3

  • Fase 2: Modo daemon + intervalo configurable + logs
  • Fase 3: Notificaciones (libnotify, webhook, email)

Comandos

zig build           # Compilar
zig build run       # Ejecutar verificación