Files
DashDescomplicar/okf/entidades/Integracao-SSH-Metrics.md
T

1.7 KiB

type, layer, tags, title
type layer tags title
Entity wiki
stack
dashdescomplicar
backend
integracao
ssh
metricas
Integracao-SSH-Metrics

Integracao-SSH-Metrics

Colector de métricas de servidores via SSH (biblioteca ssh2). Recolhe CPU, RAM, disco, load e containers do EasyPanel Server.

Responsabilidades

  • SSH Connection: Ligação ao EasyPanel (5.9.90.70:22) com password auth
  • Métricas: Executa comandos remotos para recolher CPU%, RAM%, disco%, load avg, nº containers
  • Parsing: Extrai valores de output formatado (CPU:, MEM:, DISK:, LOAD:, CONTAINERS:)
  • Sync: Sincroniza servidores Hetzner para tbl_eal_monitoring

Stack

  • Library: ssh2 1.17 (Client, exec)
  • Timeout: 20 segundos por ligação SSH
  • Auth: Password (não suporta chave privada no container)

Servidores

Nome Host Porta Auth Notas
EasyPanel 5.9.90.70 22 Password Docker Swarm — 46 serviços
CWP Server 5.9.90.105 22 ❌ Chave ed25519 NÃO acessível do container

Rotas

Método Rota Função
POST /api/server-metrics/collect Recolher todas as métricas
POST /api/server-metrics/ssh Apenas métricas SSH
POST /api/server-metrics/hetzner Sync Hetzner → monitoring

Localizações

  • Código: api/services/server-metrics.ts (188 linhas), api/routes/server-metrics.ts (68 linhas)
  • DB: tbl_eal_monitoring

Dependências

  • EasyPanel Server: SSH acesso (.env: EASY_HOST, EASY_USER, EASY_PASS)
  • MySQL-Pool: Armazenamento de métricas

Fornece a

  • Painel-Monitor: Métricas SSH exibidas na secção "Infraestrutura"
  • Express-API: Rota /api/server-metrics