monitor

package
v0.0.0-...-764d95b Latest Latest
Warning

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

Go to latest
Published: Nov 23, 2018 License: MIT Imports: 15 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

View Source
var (
	// StateCh は,engine/server_management.goから送信され,
	// engine.StatusManager()で受信されます.
	StateCh  = make(chan ServerState, 1)
	PowerCh  = make(chan PowerStruct, 1)
	LoadORCh = make(chan float64, 1)
	LoadTPCh = make(chan float64, 1)
	// ConditionCh は,engine.Ratios()から送信され,
	// engine.WeightManager()で受信されます.
	ConditionCh = make(chan []Condition, 1)
	// TODO ローカル変数にしたい
	ServerStates []ServerState
)

Functions

func AddServerState

func AddServerState(state ServerState) error

AddServerState は ServerStates に新しい要素を追加します.

func LoadMonitoring

func LoadMonitoring(config *models.Config)

func MeasureServer

func MeasureServer(config *models.Config)

func Ratios

func Ratios(states []apache.ServerStatus, ths []float64, tw int) ([]float64, [12][]string, []string)

func UpdateServerStates

func UpdateServerStates(hostName string, weight int, info string, changed time.Time) error

UpdateServerStates は ServerState の情報を更新します.

func WeightMonitor

func WeightMonitor(config *models.Config)

WeightMonitor は重みを計測する関数です。

Types

type Condition

type Condition struct {
	Name      string
	Operating float64
	CPU       float64
	Error     string
}

Condition はサーバの状態を格納する構造体です. 稼働率,CPU利用率,タイムアウトなどのエラー情報を格納します.

type PowerStruct

type PowerStruct struct {
	Name string
	Info string
	Load string
}

type ServerState

type ServerState struct {
	Name   string
	Weight int
	// Infoはサーバの状態を示します。
	// 以下の値が入ります。
	// booting up は起動処理中を示します。
	// booted up は稼働中を示します。
	// shutting down は停止処理中を示します。
	// shutted down は停止中を示します。
	Info    string
	Changed time.Time
}

ServerState はサーバの名前,重み,状態,変更を保持します.

func GetServerStates

func GetServerStates() []ServerState

GetServerStates はVMの名前,重さ,起動情報を保持する配列を返却します.

Jump to

Keyboard shortcuts

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