O que é Gatus

Gatus é uma ferramenta open source para monitorar sites, APIs e serviços. A configuração fica em YAML, facilitando revisão, versionamento e reprodução do ambiente.

O projeto atende equipes que querem acompanhar endpoints importantes sem começar por uma plataforma grande. Ele reúne checks periódicos, página de status e integrações de alerta.

A abordagem declarativa aproxima o monitoramento da infraestrutura como código. Você descreve o endpoint, as condições esperadas e as notificações em um arquivo.

Como funciona

O Gatus executa checks em intervalos definidos e compara cada resposta com condições configuradas. Em HTTP, você pode validar status, tempo e conteúdo.

Quando uma condição falha, o serviço registra o incidente e pode enviar uma notificação. Quando ocorre recuperação, outro aviso pode ser disparado.

A página de status organiza os serviços monitorados. Ela oferece uma visão rápida para a equipe sem exigir uma plataforma completa de observabilidade.

Principais recursos

O recurso central é a variedade de verificações configuráveis. O uso mais comum é HTTP, com condições sobre resposta e disponibilidade.

As condições podem combinar código HTTP, conteúdo e duração. Isso detecta respostas incorretas e degradações que um simples ping não captura.

Grupos, histórico e alertas ajudam a separar API pública, serviços internos e dependências de terceiros.

  • Checks declarativos em YAML.
  • Página de status.
  • Condições por endpoint.
  • Alertas de falha e recuperação.

Como começar

Escolha uma imagem ou binário disponibilizado pelo projeto e monte um arquivo de configuração. O processo precisa ter acesso de rede aos endpoints.

Um exemplo mínimo de check HTTP é:

web:
  port: 8080

endpoints:
  - name: API principal
    group: APIs
    url: https://exemplo.com/health
    interval: 60s
    conditions:
      - "[STATUS] == 200"
      - "[RESPONSE_TIME] < 1000"

Inicie o processo apontando para o arquivo e abra a porta configurada. O comando exato depende do método de instalação, por isso confira o README oficial.

!
Atenção

Prefira endpoints de saúde que representem dependências importantes e não exijam dados sensíveis.

Exemplo prático

Imagine uma aplicação com frontend, API e checkout. Um check valida a API, outro verifica o frontend e um terceiro acompanha um endpoint interno.

Dê nomes claros aos serviços. API principal é mais útil durante um incidente do que uma URL sem contexto.

Valide o contrato esperado, não apenas o código 200. Uma resposta bem-sucedida pode esconder uma aplicação sem dados úteis.

endpoints:
  - name: Checkout
    group: Negócio
    url: https://exemplo.com/api/checkout/health
    interval: 30s
    conditions:
      - "[STATUS] == 200"

Confira as condições aceitas na documentação da versão instalada antes de levar o exemplo para produção.

Comparação com alternativas

O Gatus fica entre ferramentas de uptime e plataformas completas de métricas. A escolha depende do nível de controle e profundidade desejados.

O Uptime Kuma favorece cadastro por interface web. O Prometheus é mais adequado para coletar e consultar séries temporais de métricas.

Serviços comerciais reduzem a manutenção, mas cobram pelo uso. O Gatus se destaca quando a equipe quer hospedar e versionar tudo.

Pontos positivos e limitações

A simplicidade operacional é o principal benefício. Um arquivo pequeno pode representar muitos checks e passar por revisão de código.

A página de status ajuda em incidentes básicos, mostrando quais endpoints falharam e quando voltaram ao normal.

Ele não substitui métricas detalhadas, logs centralizados, traces ou investigação de causa raiz.

!
Cuidado

Não coloque tokens, senhas ou dados pessoais na URL monitorada.

Casos de uso reais

Uma startup pode acompanhar domínio, autenticação e checkout para descobrir rapidamente onde está a falha.

Uma equipe de plataforma pode manter health checks internos no repositório e revisar cada alteração por pull request.

Freelancers e agências podem acompanhar vários clientes com uma instalação controlada, respeitando limites de acesso por ambiente.

Dicas e boas práticas

Comece pelos serviços que têm impacto direto no usuário. Poucos checks relevantes geram menos ruído.

i
Dica

Versione o YAML junto com a infraestrutura e revise toda mudança de condição.

Escolha intervalos coerentes. Checks frequentes podem aumentar carga; checks espaçados atrasam a percepção de falhas.

>
Pro tip

Teste os alertas antes do primeiro incidente e confirme quem recebe cada mensagem.

Use nomes de serviço claros e evite monitorar endpoints que tenham efeitos colaterais.

Vale a pena?

O Gatus vale a pena para quem quer monitorar APIs, sites e serviços com uma ferramenta leve e próxima da infraestrutura como código.

Ele não é uma plataforma completa de observabilidade. Em ambientes maiores, pode trabalhar ao lado de métricas, logs e traces.

O próximo passo é instalar uma versão atual, criar um check importante e ajustar alertas com base no comportamento real.