prober

package
v0.11.0 Latest Latest
Warning

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

Go to latest
Published: Jul 12, 2024 License: MIT Imports: 12 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

View Source
var Module = fx.Module("prober",
	fx.Provide(
		fx.Private,
		func(cfg config.Config) probing.ServiceOpts {
			return probing.ServiceOpts{
				MaxRetries:   cfg.ProbeRetries,
				ProbeTimeout: cfg.ProbeTimeout,
			}
		},
		func(cfg config.Config) probers.PortProberOpts {
			return probers.PortProberOpts{
				Offsets: cfg.DiscoveryRevivalPorts,
			}
		},
	),
	fx.Provide(
		fx.Private,
		probing.NewService,
	),
	fx.Provide(
		fx.Private,
		provideWorkerGroup,
	),
	fx.Invoke(
		probers.NewDetailsProber,
		probers.NewPortProber,
	),
	fx.Provide(NewProber),
)

Functions

func Run

func Run(
	stop chan struct{},
	stopped chan struct{},
	logger *zerolog.Logger,
	queue *ps.Service,
	wg *WorkerGroup,
	cfg config.Config,
)

Types

type Prober

type Prober struct{}

func NewProber

func NewProber(
	lc fx.Lifecycle,
	cfg config.Config,
	queue *ps.Service,
	wg *WorkerGroup,
	logger *zerolog.Logger,
) *Prober

type WorkerGroup

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

func NewWorkerGroup

func NewWorkerGroup(
	concurrency int,
	prober *probing.Service,
	metrics *monitoring.MetricService,
	logger *zerolog.Logger,
) *WorkerGroup

func (*WorkerGroup) Available

func (wg *WorkerGroup) Available() int

func (*WorkerGroup) Busy

func (wg *WorkerGroup) Busy() int

func (*WorkerGroup) Run

func (wg *WorkerGroup) Run(ctx context.Context) chan probe.Probe

Jump to

Keyboard shortcuts

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