Documentation
¶
Overview ¶
Package notify avisa quando uma execucao falha.
Existe porque era a maior ausencia frente ao Kestra: os 51 flows daquele repositorio tinham, cada um, o MESMO bloco `errors: alert_slack` copiado — vinte linhas de payload repetidas cinquenta vezes. Aqui o alerta e uma propriedade da INSTALACAO: configura-se o webhook uma vez e todo workflow passa a avisar, com opcao de silenciar um.
O webhook nao vem do YAML do workflow de proposito. Ele e uma credencial: quem tiver acesso a URL posta no canal como se fosse a plataforma, e um arquivo de pipeline nao e lugar para isso.
Index ¶
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
This section is empty.
Types ¶
type Alerta ¶
type Alerta struct {
Workflow string
RunID string
Status string
Trigger string
Tentativas int
LogicalDate *time.Time
Erro string
// Passo e o node que falhou. Vem como campo proprio, e nao so embutido no
// texto do erro, porque e a primeira coisa que quem esta de plantao procura:
// "qual passo?" antes de "por que?".
Passo string
// TrechoDoLog sao as ultimas linhas da saida daquele passo, lidas de
// `task_runs.log`. Sem isto o alerta diz que algo falhou; com isto ele diz o
// que falhou e por que, sem ninguem precisar abrir a tela as 4h.
TrechoDoLog string
// Tags do workflow viram os campos "Dominio" e "Pipeline" da mensagem — no
// Kestra isso vinha de `labels`, e e o que faz o alerta ser acionavel sem
// abrir a tela.
Tags []string
// URLBase da UI, para o link direto da execucao. Vazia = sem link.
URLBase string
}
Alerta e o que se conta sobre uma falha.
type Notificador ¶
Notificador manda o alerta. Interface pequena para que o dispatcher nao conheca Slack — e para que o teste nao precise de rede.