monitor

package
v0.19.3 Latest Latest
Warning

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

Go to latest
Published: Aug 29, 2019 License: AGPL-3.0 Imports: 11 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

View Source
var (

	// Error is the default error class for piecestore monitor errors
	Error = errs.Class("piecestore monitor")
)

Functions

This section is empty.

Types

type Config

type Config struct {
	Interval         time.Duration `help:"how frequently Kademlia bucket should be refreshed with node stats" default:"1h0m0s"`
	MinimumDiskSpace memory.Size   `help:"how much disk space a node at minimum has to advertise" default:"500GB"`
	MinimumBandwidth memory.Size   `help:"how much bandwidth a node at minimum has to advertise" default:"500GB"`
}

Config defines parameters for storage node disk and bandwidth usage monitoring.

type Service

type Service struct {
	Loop   sync2.Cycle
	Config Config
	// contains filtered or unexported fields
}

Service which monitors disk usage and updates kademlia network as necessary.

func NewService

func NewService(log *zap.Logger, routingTable *kademlia.RoutingTable, store *pieces.Store, usageDB bandwidth.DB, allocatedDiskSpace, allocatedBandwidth int64, interval time.Duration, config Config) *Service

NewService creates a new storage node monitoring service.

func (*Service) AvailableBandwidth added in v0.10.0

func (service *Service) AvailableBandwidth(ctx context.Context) (_ int64, err error)

AvailableBandwidth returns available bandwidth for upload/download

func (*Service) AvailableSpace added in v0.10.0

func (service *Service) AvailableSpace(ctx context.Context) (_ int64, err error)

AvailableSpace returns available disk space for upload

func (*Service) Close added in v0.11.0

func (service *Service) Close() (err error)

Close stops the monitor service.

func (*Service) Run

func (service *Service) Run(ctx context.Context) (err error)

Run runs monitor service

Jump to

Keyboard shortcuts

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