probers

package
v0.8.0 Latest Latest
Warning

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

Go to latest
Published: Mar 27, 2024 License: MIT Imports: 17 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

View Source
var (
	ErrGlobalProbeTimeout = errors.New("global probe timeout reached")
	ErrPortProbesFailed   = errors.New("all port probes failed")
)

Functions

This section is empty.

Types

type DetailsProber

type DetailsProber struct {
	// contains filtered or unexported fields
}

func NewDetailsProber

func NewDetailsProber(
	service *probing.Service,
	metrics *monitoring.MetricService,
	validate *validator.Validate,
	clock clockwork.Clock,
	logger *zerolog.Logger,
) (*DetailsProber, error)

func (*DetailsProber) HandleFailure

func (s *DetailsProber) HandleFailure(svr server.Server) server.Server

func (*DetailsProber) HandleRetry

func (s *DetailsProber) HandleRetry(svr server.Server) server.Server

func (*DetailsProber) HandleSuccess

func (s *DetailsProber) HandleSuccess(result any, svr server.Server) server.Server

func (*DetailsProber) Probe

func (s *DetailsProber) Probe(
	ctx context.Context,
	svr server.Server,
	queryPort int,
	timeout time.Duration,
) (any, error)

Probe probes specified server's GS1 query port On success, update the server's extended params In case a server with specified identifier does not exit, create the server beforehand

type PortProber

type PortProber struct {
	// contains filtered or unexported fields
}

func NewPortProber

func NewPortProber(
	service *probing.Service,
	metrics *monitoring.MetricService,
	validate *validator.Validate,
	clock clockwork.Clock,
	logger *zerolog.Logger,
	opts PortProberOpts,
) (*PortProber, error)

func (*PortProber) HandleFailure

func (s *PortProber) HandleFailure(svr server.Server) server.Server

func (*PortProber) HandleRetry

func (s *PortProber) HandleRetry(svr server.Server) server.Server

func (*PortProber) HandleSuccess

func (s *PortProber) HandleSuccess(res any, svr server.Server) server.Server

func (*PortProber) Probe

func (s *PortProber) Probe(
	ctx context.Context,
	svr server.Server,
	_ int,
	timeout time.Duration,
) (any, error)

Probe attempts to discover a query port for a given server address. To discover the query port, several ports are tried: public port +1, +2 and so forth. In case when multiple query ports are available, the preferred port would be selected according to this order: gs1 mod, admin mod, vanilla response.

type PortProberOpts added in v0.3.0

type PortProberOpts struct {
	Offsets []int
}

type Result

type Result struct {
	// contains filtered or unexported fields
}
var NoResult Result

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL