monitoring

package
v0.0.0-...-5d57ea5 Latest Latest
Warning

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

Go to latest
Published: Jan 13, 2025 License: Apache-2.0 Imports: 5 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

This section is empty.

Types

type ClientMon

type ClientMon struct {
	ServiceBase
}

type MethodMon

type MethodMon struct {
	Name         string
	RequestType  ecal.DataType
	ResponseType ecal.DataType
	CallCount    int64
}

type MonitorEntity

type MonitorEntity uint

type Monitoring

type Monitoring struct {
	Publishers  []TopicMon
	Subscribers []TopicMon
	Processes   []ProcessMon
	Clients     []ClientMon
	Servers     []ServerMon
}

func GetMonitoring

func GetMonitoring(entities MonitorEntity) Monitoring

type ProcessMon

type ProcessMon struct {
	RegistrationClock  int32 // registration heart beat
	HostName           string
	HostGroup          string
	Pid                int32
	ProcessName        string
	UnitName           string
	ProcessParameters  string // Command line args
	StateSeverity      ProcessSeverity
	StateSeverityLevel int32
	StateInfo          string
	// TODO: Time sync?
	ComponentsInitialized string
	RuntimeVersion        string // eCAL Version in use
}

type ProcessSeverity

type ProcessSeverity uint8
const (
	ProcSevUnknown  ProcessSeverity = C.proc_sev_unknown
	ProcSevHealthy  ProcessSeverity = C.proc_sev_healthy
	ProcSevWarning  ProcessSeverity = C.proc_sev_warning
	ProcSevCritical ProcessSeverity = C.proc_sev_critical
	ProcSevFailed   ProcessSeverity = C.proc_sev_failed
)

func (ProcessSeverity) String

func (p ProcessSeverity) String() string

type ServerMon

type ServerMon struct {
	ServiceBase
	PortV0 uint32 // TCP Port for V0 protocol
	PortV1 uint32 // TCP Port for V1 protocol
}

type ServiceBase

type ServiceBase struct {
	Name              string
	ID                uint64
	Methods           []MethodMon
	RegistrationClock int32 // registration heart beat
	HostName          string
	Process           string
	Unit              string
	Pid               int32
	ProtocolVersion   uint32
}

type TopicMon

type TopicMon struct {
	RegistrationClock int32 // registration heart beat
	HostName          string
	// host_group         string
	// pid                int32
	// process_name       string
	UnitName  string
	TopicID   uint64
	TopicName string
	Direction string
	Datatype  ecal.DataType
	// TODO: transport layer
	TopicSize           int32 // Size of messages (bytes)
	ConnectionsLocal    int32
	ConnectionsExternal int32
	MessageDrops        int32
	// data_id              int64
	DataClock int64
	DataFreq  int32 // mHz

}

Jump to

Keyboard shortcuts

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