Pular para o conteúdo principal

Alertas e monitoramento

O Salvo avisa quando algo precisa de atenção, por três canais: e-mail, webhook e Zabbix. Os três seguem as mesmas regras da tela de Alertas do painel.

Quando o Salvo avisa​

NívelSituação
erroum job terminou com item sem backup novo
errouma conta coberta por um job está sem backup novo além do limite
erroum destino com menos de 5% livre
erroum job com agenda que não rodou no horário
avisoum destino com menos de 10% livre, ou enchendo em menos de 7 dias
avisouma execução interrompida

Um problema é avisado quando começa, quando se resolve e uma vez por dia enquanto continua, numa mensagem só.

E-mail​

/var/lib/salvo/salvo alert-channel --type email --to ops@example.com --levels erro,aviso

Sem --smtp, a mensagem sai pelo servidor de e-mail do próprio servidor (sendmail). Com um servidor SMTP:

/var/lib/salvo/salvo alert-channel --type email --to ops@example.com \
--smtp smtp.example.com:587 --user alerts@example.com --password-from /root/senha-smtp

A senha vem de um arquivo, nunca de um argumento (argumentos aparecem no ps).

Webhook​

/var/lib/salvo/salvo alert-channel --type webhook --url https://hooks.example.com/salvo --secret-from /root/segredo-webhook --levels erro

O Salvo envia um POST com JSON. Com um segredo, a requisição leva a assinatura no cabeçalho X-Salvo-Assinatura: sha256=<HMAC> (HMAC-SHA256 do corpo), para quem recebe conferir que veio do Salvo.

Zabbix​

O Salvo mantém o <estado>/zabbix.json atualizado (permissão 0644, sem segredos). O agente do Zabbix lê com um UserParameter:

zabbix_agentd.d/salvo.conf
UserParameter=salvo.estado,cat /ESTADO/zabbix.json
CampoO que é
atualizado, atualizado_unixquando o arquivo foi gravado; alerte se parar de mudar (executor parado)
problemas, erros, avisosproblemas atuais, por nível
contas_sem_backupcontas sem backup recente
jobs_com_falhajobs com falha
jobs_atrasadosjobs que não rodaram no horário
destinos_com_pouco_espacodestinos com pouco espaço
titulosos títulos dos problemas, separados por ;

Testar e conferir​

/var/lib/salvo/salvo alert-channel --list # os canais
/var/lib/salvo/salvo alert-test # envia uma mensagem de teste para cada canal
/var/lib/salvo/salvo alerts # os problemas de agora
/var/lib/salvo/salvo zabbix # mostra o zabbix.json