O que vem instalado no servidor Healthchecks?
- Healthchecks 5.0 na imagem oficial
- Base de dados SQLite, pelo que não é preciso um servidor de base de dados separado
- Os processos de alertas e relatórios (sendalerts, sendreports) a correr dentro do contentor
- Uma conta de administrador, com o e-mail de início de sessão e a palavra-passe no painel
- Registo fechado, para que mais ninguém se possa registar
- HTTPS através do Caddy, num endereço sslip.io baseado no seu IP
- Firewall com apenas as portas 22, 80 e 443 abertas
Que tamanho é necessário para o Healthchecks?
A documentação do Healthchecks não indica um valor de RAM. Como regra prática, 1 GB é um bom começo, já que a aplicação responde sobretudo a pedidos de ping e envia alertas em segundo plano. Se precisar de poupar memória, a documentação aponta para a definição GUNICORN_WORKERS. Pondere 2 GB à medida que as verificações e o histórico de pings crescem. Por predefinição, os últimos 100 pings são guardados para cada verificação, e uma conta pode ter até 10 000 verificações.
| Utilização | Tamanho | Preço | Escolher |
|---|---|---|---|
| Algumas pessoas | 1 GB RAM · 1 vCore · 25 GB NVMe | $2.58/mês | |
| Equipa pequena | 2 GB RAM · 1 vCore · 40 GB NVMe | $4.01/mês | |
| Empresa | 4 GB RAM · 2 vCore · 60 GB NVMe | $6.89/mês |
Para quem é?
- Administradores que querem prova de que a cópia de segurança de ontem à noite realmente correu
- Programadores com tarefas cron e tarefas agendadas para acompanhar
- Agências que vigiam tarefas em vários projetos
- Quem prefere não deixar os dados de monitorização de tarefas num serviço externo
O que acontece depois de encomendar?
- Defina o tamanho e conclua o pagamento.
- O servidor arranca e o Healthchecks instala-se sozinho. Está concluído quando a linha Aplicação do painel indicar que o Healthchecks está pronto.
- No separador Resumo, clique em Abrir aplicação e inicie sessão com os dados das linhas E-mail e Palavra-passe.
- Para alertas por e-mail, acrescente ao compose.yaml definições como EMAIL_HOST ou ligue antes um webhook.
- Crie uma verificação e defina o respetivo período e tempo de tolerância.
- Acrescente uma chamada curl ao endereço de ping no fim da tarefa.
Em todos os servidores
- Cópias de segurança diárias incluídas no preço
- Tráfego ilimitado
- Acesso root completo
- Aumentar ou reduzir a RAM e o CPU mais tarde, e fazer crescer o disco
- Localização: Istanbul · IST-1.
Bom saber
- A instalação não configura o envio de e-mail. O Healthchecks envia alertas, relatórios e ligações de início de sessão por e-mail, por isso nada disto sai até acrescentar definições como EMAIL_HOST a /opt/seturack/healthchecks/compose.yaml.
- O Telegram, o Discord, o Pushover e o Matrix precisam de chaves adicionais no servidor. Os webhooks funcionam sem elas.
- Se o Healthchecks parar, os alertas também param. Para tarefas importantes, mantenha este servidor separado dos servidores que vigia.
- Trate os endereços de ping como segredos. Quem tiver um pode marcar essa tarefa como bem-sucedida.
- A interface existe apenas em inglês.
- A instalação usa SQLite. O projeto indica o PostgreSQL ou o MySQL como blocos de montagem para alojamento próprio, por isso planeie uma mudança de base de dados se executar muitas verificações com muitos pings.
Healthchecks: perguntas e respostas
De quanta RAM precisa o Healthchecks?
A documentação do Healthchecks não indica um valor de RAM. Como regra prática, 1 GB é um bom começo, e 2 GB serve para um número crescente de verificações e mais histórico de pings. Se não chegar, aumenta a partir do painel.
Como funciona o Healthchecks?
Cada verificação tem o seu endereço de ping, um período esperado e um tempo de tolerância. A tarefa chama o endereço quando termina. Se a chamada chegar tarde e o tempo de tolerância se esgotar, a verificação fica em baixo e são enviados alertas.
Como acrescento o Healthchecks a uma tarefa cron?
Copie o endereço de ping da verificação e junte-o à linha do crontab, assim: /root/backup.sh && curl -fsS -m 10 --retry 5 -o /dev/null PING_ADDRESS. Se a cópia de segurança falhar, o ping não sai e recebe um alerta quando o tempo acabar.
Uma tarefa pode comunicar que falhou?
Sim. Acrescente /fail ao endereço de ping para comunicar uma falha de imediato, /start para marcar o início de uma execução, ou um código de saída. Assim não tem de esperar pelo limite de tempo quando uma tarefa dá erro.
Que canais de alerta o Healthchecks suporta?
Webhooks, Slack, Microsoft Teams e PagerDuty vêm ativos e não precisam de chaves no servidor. O e-mail precisa de definições SMTP. O Telegram, o Discord e o Pushover precisam de chaves desses serviços acrescentadas ao compose.yaml.
Em que difere de um monitor de sites?
Uma ferramenta como o Uptime Kuma envia pedidos ao seu site a partir do exterior. O Healthchecks funciona ao contrário: a tarefa chama quando termina, e o silêncio dispara o alerta. Por isso pode vigiar cópias de segurança e tarefas cron que não têm endereço público.
Posso usar o meu próprio domínio com o Healthchecks?
Sim, mas os endereços de ping são construídos a partir do endereço do site, por isso ligue o domínio antes de criar verificações. Precisa de um registo A, das definições do Caddy e de SITE_URL, SITE_HOST e SITE_ADI no ficheiro .env. Se o alterar mais tarde, atualize os endereços nas suas tarefas.