Documentation
¶
Overview ¶
Package endpoint implements the HTTP endpoints of Ayd such as status page.
Index ¶
- func HealthzEndpoint(s Store) http.HandlerFunc
- func IncidentsCSVEndpoint(s Store) http.HandlerFunc
- func IncidentsHTMLEndpoint(s Store) http.HandlerFunc
- func IncidentsJSONEndpoint(s Store) http.HandlerFunc
- func IncidentsRSSEndpoint(s Store) http.HandlerFunc
- func LogCSVEndpoint(s Store) http.HandlerFunc
- func LogHTMLEndpoint(s Store) http.HandlerFunc
- func LogJsonEndpoint(s Store) http.HandlerFunc
- func LogLTSVEndpoint(s Store) http.HandlerFunc
- func LogXlsxEndpoint(s Store) http.HandlerFunc
- func MetricsEndpoint(s Store) http.HandlerFunc
- func New(s Store) http.Handler
- func StatusHTMLEndpoint(s Store) http.HandlerFunc
- func StatusJSONEndpoint(s Store) http.HandlerFunc
- func StatusTextEndpoint(s Store) http.HandlerFunc
- func TargetsJSONEndpoint(s Store) http.HandlerFunc
- func TargetsTextEndpoint(s Store) http.HandlerFunc
- func WithBasicAuth(handler http.Handler, userinfo string) http.Handler
- type BasicAuth
- type CommonHeader
- type ContextScanner
- type FilterScanner
- type LinkHeader
- type PagingScanner
- type Store
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
func HealthzEndpoint ¶
func HealthzEndpoint(s Store) http.HandlerFunc
HealthzEndpoint is the http.HandlerFunc for /healthz page.
func IncidentsCSVEndpoint ¶ added in v0.14.0
func IncidentsCSVEndpoint(s Store) http.HandlerFunc
func IncidentsHTMLEndpoint ¶ added in v0.14.0
func IncidentsHTMLEndpoint(s Store) http.HandlerFunc
func IncidentsJSONEndpoint ¶ added in v0.14.0
func IncidentsJSONEndpoint(s Store) http.HandlerFunc
func IncidentsRSSEndpoint ¶ added in v0.14.0
func IncidentsRSSEndpoint(s Store) http.HandlerFunc
func LogCSVEndpoint ¶
func LogCSVEndpoint(s Store) http.HandlerFunc
func LogHTMLEndpoint ¶ added in v0.14.0
func LogHTMLEndpoint(s Store) http.HandlerFunc
func LogJsonEndpoint ¶
func LogJsonEndpoint(s Store) http.HandlerFunc
func LogLTSVEndpoint ¶ added in v0.16.0
func LogLTSVEndpoint(s Store) http.HandlerFunc
func LogXlsxEndpoint ¶ added in v0.16.0
func LogXlsxEndpoint(s Store) http.HandlerFunc
func MetricsEndpoint ¶
func MetricsEndpoint(s Store) http.HandlerFunc
MetricsEndpoint implements Prometheus metrics endpoint. This endpoint follows both of Prometheus specification and OpenMetrics specification.
func StatusHTMLEndpoint ¶
func StatusHTMLEndpoint(s Store) http.HandlerFunc
func StatusJSONEndpoint ¶
func StatusJSONEndpoint(s Store) http.HandlerFunc
func StatusTextEndpoint ¶
func StatusTextEndpoint(s Store) http.HandlerFunc
func TargetsJSONEndpoint ¶ added in v0.12.0
func TargetsJSONEndpoint(s Store) http.HandlerFunc
TargetsJSONEndpoint replies target list in json format.
func TargetsTextEndpoint ¶ added in v0.12.0
func TargetsTextEndpoint(s Store) http.HandlerFunc
TargetsTextEndpoint replies target list in text.
Types ¶
type BasicAuth ¶
BasicAuth is a http.Handler wrapper that handles Basic Authorization. It supports only one pair of username and password.
type CommonHeader ¶ added in v0.13.3
func (CommonHeader) ServeHTTP ¶ added in v0.13.3
func (ch CommonHeader) ServeHTTP(w http.ResponseWriter, r *http.Request)
type ContextScanner ¶ added in v0.16.1
type ContextScanner struct {
// contains filtered or unexported fields
}
func NewContextScanner ¶ added in v0.16.1
func NewContextScanner(ctx context.Context, s api.LogScanner) ContextScanner
func (ContextScanner) Close ¶ added in v0.16.1
func (cs ContextScanner) Close() error
func (ContextScanner) Record ¶ added in v0.16.1
func (cs ContextScanner) Record() api.Record
func (ContextScanner) Scan ¶ added in v0.16.1
func (cs ContextScanner) Scan() bool
type FilterScanner ¶ added in v0.16.0
type FilterScanner struct {
Scanner api.LogScanner
Query query.Query
}
func (FilterScanner) Close ¶ added in v0.16.0
func (f FilterScanner) Close() error
func (FilterScanner) Record ¶ added in v0.16.0
func (f FilterScanner) Record() api.Record
func (FilterScanner) Scan ¶ added in v0.16.0
func (f FilterScanner) Scan() bool
type LinkHeader ¶ added in v0.13.3
type LinkHeader struct {
Upstream http.HandlerFunc
Link string
}
func (LinkHeader) ServeHTTP ¶ added in v0.13.3
func (lh LinkHeader) ServeHTTP(w http.ResponseWriter, r *http.Request)
type PagingScanner ¶ added in v0.16.0
type PagingScanner struct {
Scanner api.LogScanner
Offset uint64
Limit uint64
// contains filtered or unexported fields
}
func (*PagingScanner) Close ¶ added in v0.16.0
func (s *PagingScanner) Close() error
func (*PagingScanner) Record ¶ added in v0.16.0
func (s *PagingScanner) Record() api.Record
func (*PagingScanner) Scan ¶ added in v0.16.0
func (s *PagingScanner) Scan() bool
func (*PagingScanner) ScanTotal ¶ added in v0.16.0
func (s *PagingScanner) ScanTotal() uint64
ScanTotal scans all logs and return number of records. Don't call this before get records you need, because this method consumes all logs.
type Store ¶ added in v0.12.0
type Store interface {
// Targets returns target URLs include inactive target.
Targets() []string
// ProbeHistory returns a slice of ProbeHistory.
ProbeHistory() []api.ProbeHistory
// MakeReport creates ayd.Report for exporting for endpoint.
MakeReport(probeHistoryLength int) api.Report
// ReportInternalError reports Ayd internal error.
ReportInternalError(scope, message string)
// Errors returns a list of internal (critical) errors.
Errors() (healthy bool, messages []string)
// IncidentCount returns the count of incident causes.
IncidentCount() int
// OpenLog opens ayd.LogScanner.
OpenLog(since, until time.Time) (api.LogScanner, error)
}
Click to show internal directories.
Click to hide internal directories.