Documentation
¶
Overview ¶
Package api expõe a interface HTTP do UpWatch.
A API é de primeira classe, não um acessório da interface gráfica: é o pedido mais votado do Uptime Kuma, cuja comunicação depende de Socket.IO e não oferece caminho programático. Aqui a interface consome exatamente os mesmos endpoints que qualquer script.
Index ¶
Constants ¶
View Source
const SessionCookieName = "upwatch_session"
SessionCookieName é o nome do cookie de sessão.
Variables ¶
This section is empty.
Functions ¶
Types ¶
type API ¶
type API struct {
// contains filtered or unexported fields
}
API é o conjunto de handlers HTTP.
type MonitorSink ¶
MonitorSink recebe as alterações de monitor.
Interface estreita em vez do agendador inteiro: a API não precisa saber agendar, só avisar que algo mudou. É o que faz um monitor recém-criado começar a ser verificado sem esperar reinício.
type Options ¶
type Options struct {
Store store.Store
Auth *auth.Service
Checkers *checker.Registry
Clock clock.Clock
// Scheduler recebe as mudanças de monitor feitas pela API, para um
// cadastro passar a ser verificado sem esperar reinício.
Scheduler MonitorSink
// SecureCookies marca o cookie de sessão como Secure. Fica desligado
// por padrão porque muitas instalações caseiras servem em HTTP puro na
// rede local, e um cookie Secure ali simplesmente não seria enviado —
// o login pareceria quebrado sem explicação.
SecureCookies bool
// SessionTTL espelha a validade usada pelo serviço de autenticação,
// para o cookie expirar junto com a sessão no servidor.
SessionTTL time.Duration
// Version aparece em upwatch_build_info, para o painel de métricas
// mostrar qual versão está no ar sem precisar consultar o processo.
Version string
// Counters acumula o que o processo viu, para a exposição de métricas
// não precisar varrer a tabela de batidas a cada raspagem.
Counters *metrics.Counters
// PublicURL é o endereço externo da instalação, como
// "https://status.exemplo.com".
//
// Vazio faz o feed usar endereços relativos, que é o padrão seguro: a
// alternativa seria reconstruí-los a partir do cabeçalho Host, e esse
// cabeçalho é controlado por quem chama. Configure atrás de proxy,
// quando quiser endereços absolutos no feed.
PublicURL string
}
Options reúne as dependências da API.
Click to show internal directories.
Click to hide internal directories.