api

package
v0.0.0-...-31c1c1e Latest Latest
Warning

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

Go to latest
Published: Jul 1, 2022 License: Apache-2.0 Imports: 9 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

This section is empty.

Types

type API

type API interface {
	Monitor(id string, data MonitorData) (MonitorResponse, error)
}

func New

func New(config Config) (API, error)

type Config

type Config struct {
	URL    string
	Token  string
	Client *http.Client
}

type MonitorData

type MonitorData struct {
	Version       string                `json:"version"`
	Uptime        uint64                `json:"uptime_sec"` // seconds
	SysCPU        []json.Number         `json:"sys_cpu"`
	SysMemory     []json.Number         `json:"sys_mem"`  // bytes
	SysDisk       []json.Number         `json:"sys_disk"` // bytes
	FSMem         []json.Number         `json:"fs_mem"`   // bytes
	FSDisk        []json.Number         `json:"fs_disk"`  // bytes
	NetTX         []json.Number         `json:"net_tx"`   // kbit/s
	Session       []json.Number         `json:"viewer"`
	ProcessStates [6]uint64             `json:"proc_states"` // finished, starting, running, finishing, failed, killed
	Processes     *[]MonitorProcessData `json:"procs,omitempty"`
}

type MonitorProcessData

type MonitorProcessData struct {
	ID     string              `json:"id"`
	RefID  string              `json:"id_ref"`
	CPU    []json.Number       `json:"cpu"`
	Mem    []json.Number       `json:"mem"`
	Uptime uint64              `json:"uptime_sec"`
	Output map[string][]uint64 `json:"output"`
}

type MonitorResponse

type MonitorResponse struct {
	Next uint64 `json:"next_update"`
}

Jump to

Keyboard shortcuts

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