monitor

package
v0.0.0-...-7e90a1a Latest Latest
Warning

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

Go to latest
Published: Mar 4, 2024 License: MIT Imports: 13 Imported by: 0

Documentation

Overview

Package monitor is a generated GoMock package.

Package monitor is a generated GoMock package.

Index

Constants

View Source
const DefaultNodeStatsPollResponseSize = 128 * 1024

Variables

This section is empty.

Functions

This section is empty.

Types

type MockMonitor

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

MockMonitor is a mock of Monitor interface.

func NewMockMonitor

func NewMockMonitor(ctrl *gomock.Controller) *MockMonitor

NewMockMonitor creates a new mock instance.

func (*MockMonitor) ChangeState

ChangeState mocks base method.

func (*MockMonitor) CheckNodes

func (m *MockMonitor) CheckNodes(now time.Time) error

CheckNodes mocks base method.

func (*MockMonitor) EXPECT

func (m *MockMonitor) EXPECT() *MockMonitorMockRecorder

EXPECT returns an object that allows the caller to indicate expected use.

func (*MockMonitor) NetworkOperatesStable

func (m *MockMonitor) NetworkOperatesStable() bool

NetworkOperatesStable mocks base method.

func (*MockMonitor) NetworkStatusInfo

func (m *MockMonitor) NetworkStatusInfo() NetworkStatusInfo

NetworkStatusInfo mocks base method.

func (*MockMonitor) State

State mocks base method.

type MockMonitorMockRecorder

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

MockMonitorMockRecorder is the mock recorder for MockMonitor.

func (*MockMonitorMockRecorder) ChangeState

func (mr *MockMonitorMockRecorder) ChangeState(state interface{}) *gomock.Call

ChangeState indicates an expected call of ChangeState.

func (*MockMonitorMockRecorder) CheckNodes

func (mr *MockMonitorMockRecorder) CheckNodes(now interface{}) *gomock.Call

CheckNodes indicates an expected call of CheckNodes.

func (*MockMonitorMockRecorder) NetworkOperatesStable

func (mr *MockMonitorMockRecorder) NetworkOperatesStable() *gomock.Call

NetworkOperatesStable indicates an expected call of NetworkOperatesStable.

func (*MockMonitorMockRecorder) NetworkStatusInfo

func (mr *MockMonitorMockRecorder) NetworkStatusInfo() *gomock.Call

NetworkStatusInfo indicates an expected call of NetworkStatusInfo.

func (*MockMonitorMockRecorder) State

func (mr *MockMonitorMockRecorder) State() *gomock.Call

State indicates an expected call of State.

type MockNodesStatsScrapper

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

MockNodesStatsScrapper is a mock of NodesStatsScrapper interface.

func NewMockNodesStatsScrapper

func NewMockNodesStatsScrapper(ctrl *gomock.Controller) *MockNodesStatsScrapper

NewMockNodesStatsScrapper creates a new mock instance.

func (*MockNodesStatsScrapper) EXPECT

EXPECT returns an object that allows the caller to indicate expected use.

func (*MockNodesStatsScrapper) ScrapeNodeStats

func (m *MockNodesStatsScrapper) ScrapeNodeStats() (nodesWithStats, error)

ScrapeNodeStats mocks base method.

type MockNodesStatsScrapperMockRecorder

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

MockNodesStatsScrapperMockRecorder is the mock recorder for MockNodesStatsScrapper.

func (*MockNodesStatsScrapperMockRecorder) ScrapeNodeStats

func (mr *MockNodesStatsScrapperMockRecorder) ScrapeNodeStats() *gomock.Call

ScrapeNodeStats indicates an expected call of ScrapeNodeStats.

type Monitor

type Monitor interface {
	CheckNodes(now time.Time) error
	NetworkStatusInfo() NetworkStatusInfo
	NetworkOperatesStable() bool
	State() NetworkMonitoringState
	ChangeState(state NetworkMonitoringState) (previous NetworkMonitoringState)
}

type NetworkErrorCriteria

type NetworkErrorCriteria struct {
	NodesDown   NodesDownCriterion
	NodesHeight NodesHeightCriterion
	StateHash   NodesStateHashCriterion
}

func (*NetworkErrorCriteria) Validate

func (c *NetworkErrorCriteria) Validate() error

type NetworkMonitor

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

func NewNetworkMonitoring

func NewNetworkMonitoring(
	initialMonitorState NetworkMonitoringState,
	netSchemeChar NetworkSchemeChar,
	maxStatsHistoryLen int,
	nodesStatsScraper NodesStatsScrapper,
	alertOnNetworkErrorStreak int,
	criteria NetworkErrorCriteria,
) (NetworkMonitor, error)

func (*NetworkMonitor) ChangeState

func (m *NetworkMonitor) ChangeState(state NetworkMonitoringState) (previous NetworkMonitoringState)

func (*NetworkMonitor) CheckNodes

func (m *NetworkMonitor) CheckNodes(now time.Time) error

func (*NetworkMonitor) NetworkOperatesStable

func (m *NetworkMonitor) NetworkOperatesStable() bool

func (*NetworkMonitor) NetworkStatusInfo

func (m *NetworkMonitor) NetworkStatusInfo() NetworkStatusInfo

func (*NetworkMonitor) Run

func (m *NetworkMonitor) Run(ctx context.Context, pollNodesStatsInterval time.Duration)

func (*NetworkMonitor) RunInBackground

func (m *NetworkMonitor) RunInBackground(ctx context.Context, pollNodesStatsInterval time.Duration) <-chan struct{}

func (*NetworkMonitor) State

type NetworkMonitoringState

type NetworkMonitoringState int32
const (
	StateActive NetworkMonitoringState = iota + 1
	StateFrozenNetworkOperatesStable
	StateFrozenNetworkDegraded
)

func NewNetworkMonitoringStateFromString

func NewNetworkMonitoringStateFromString(state string) (NetworkMonitoringState, error)

func (NetworkMonitoringState) String

func (s NetworkMonitoringState) String() string

func (NetworkMonitoringState) Validate

func (s NetworkMonitoringState) Validate() error

type NetworkSchemeChar

type NetworkSchemeChar string
const (
	MainNetSchemeChar   NetworkSchemeChar = "W"
	TestNetSchemeChar   NetworkSchemeChar = "T"
	StageNetSchemeChar  NetworkSchemeChar = "S"
	CustomNetSchemeChar NetworkSchemeChar = "E"
)

type NetworkStatusInfo

type NetworkStatusInfo struct {
	Updated time.Time         `json:"updated,omitempty"`
	Network NetworkSchemeChar `json:"network"`
	Status  bool              `json:"status"`
	Height  int               `json:"height"`
}

type NodesDownCriterion

type NodesDownCriterion struct {
	TotalDownNodesPart float64
}

func (*NodesDownCriterion) Validate

func (c *NodesDownCriterion) Validate() error

type NodesHeightCriterion

type NodesHeightCriterion struct {
	HeightDiff              int
	RequireMinNodesOnHeight int // minimum required count of nodes on the same height to activate this criterion
}

func (*NodesHeightCriterion) Validate

func (c *NodesHeightCriterion) Validate() error

type NodesStateHashCriterion

type NodesStateHashCriterion struct {
	MinStateHashGroupsOnSameHeight   int
	MinValuableStateHashGroups       int
	MinNodesInValuableStateHashGroup int
	RequireMinNodesOnHeight          int // minimum required count of nodes on the same height to activate this criterion
}

func (*NodesStateHashCriterion) Validate

func (c *NodesStateHashCriterion) Validate() error

type NodesStatsScrapper

type NodesStatsScrapper interface {
	ScrapeNodeStats() (nodesWithStats, error)
}

func NewNodesStatsScraperHTTP

func NewNodesStatsScraperHTTP(nodesStatsUrl string, maxResponseSize int64) NodesStatsScrapper

Jump to

Keyboard shortcuts

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