engine

package
v0.2.1 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Dec 7, 2024 License: MIT Imports: 10 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

This section is empty.

Types

type Monitor

type Monitor struct {
	Name                string
	URL                 string
	Retries             int
	RetryInterval       int
	ConnectTimeout      time.Duration
	ResponseTimeout     time.Duration
	MaxRedirects        int
	AcceptedStatusCodes []int
	HTTPMethod          string
	Headers             map[string]string
}

Monitor defines what and how to monitor

type Ping

type Ping struct {
	Name                  string
	URL                   string
	Status                string
	Timestamp             time.Time
	StatusCode            int
	Message               string
	DNSTime               time.Duration
	ConnectionTime        time.Duration
	TLSTime               time.Duration
	TTFB                  time.Duration
	DownloadTime          time.Duration
	TotalResponseTime     time.Duration
	CertRemainingValidity time.Duration
}

Ping is the result of a monitoring event

func ExecutePing

func ExecutePing(monitor *Monitor) *Ping

executePing takes a Monitor and produces a Ping

type SummaryStats

type SummaryStats struct {
	Endpoint                   string
	Availability               float64
	AvgResponseTime            time.Duration
	MedianResponseTime         time.Duration
	Percentile99ResponseTime   time.Duration
	LongestResponseTime        time.Duration
	ShortestCertValidityTime   time.Duration
	WorstMonitor               string
	NumberOfMeasurements       int
	NumberOfFailedMeasurements int
	MonitoringDuration         string
}

func Summarize

func Summarize(pings []*Ping) []*SummaryStats

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL
JackTT - Gopher 🇻🇳