No description
Find a file
Ronaldo Dias 84ef1e44a0 Adiciona arquivos do serviço heartbeat e documentação
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-06-15 16:03:51 -03:00
heartbeat.service Adiciona arquivos do serviço heartbeat e documentação 2026-06-15 16:03:51 -03:00
heartbeat.sh Adiciona arquivos do serviço heartbeat e documentação 2026-06-15 16:03:51 -03:00
heartbeat.timer Adiciona arquivos do serviço heartbeat e documentação 2026-06-15 16:03:51 -03:00
README.md Adiciona arquivos do serviço heartbeat e documentação 2026-06-15 16:03:51 -03:00

heartbeat

Serviço systemd que coleta métricas do sistema a cada 5 minutos e envia um ping para o Healthchecks.io, permitindo monitorar se a máquina está viva e saudável.

Arquivos

Arquivo Destino Descrição
heartbeat.sh /usr/local/bin/heartbeat.sh Script que coleta métricas e envia o ping
heartbeat.service /etc/systemd/system/heartbeat.service Unit systemd que executa o script
heartbeat.timer /etc/systemd/system/heartbeat.timer Timer que dispara o serviço a cada 5 minutos

Métricas enviadas

O script coleta e envia as seguintes informações em JSON:

  • timestamp — data e hora da execução (ISO 8601)
  • uptime — tempo de atividade da máquina
  • load — carga média do sistema (1, 5 e 15 minutos)
  • disk_free — espaço livre em disco na raiz (/)
  • mem_free — memória disponível

Instalação

# Copiar o script
sudo cp heartbeat.sh /usr/local/bin/heartbeat.sh
sudo chmod +x /usr/local/bin/heartbeat.sh

# Copiar os units systemd
sudo cp heartbeat.service /etc/systemd/system/
sudo cp heartbeat.timer /etc/systemd/system/

# Recarregar e habilitar
sudo systemctl daemon-reload
sudo systemctl enable --now heartbeat.timer

Configuração

Antes de instalar, edite heartbeat.sh e substitua a URL do ping pela URL do seu check no Healthchecks.io:

# Linha a editar no heartbeat.sh
https://hc-ping.com/SEU-UUID-AQUI

Verificar status

# Ver se o timer está ativo
systemctl status heartbeat.timer

# Ver próxima execução
systemctl list-timers heartbeat.timer

# Ver log da última execução
journalctl -u heartbeat.service -n 20