models

package
v0.1.2 Latest Latest
Warning

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

Go to latest
Published: Nov 30, 2022 License: Apache-2.0 Imports: 5 Imported by: 0

Documentation

Index

Constants

View Source
const (
	ConfigDirPath  = "/app/config/"
	ConfigFileName = "kubeshark-config.json"
	DataDirPath    = "/app/data/"
)

Variables

This section is empty.

Functions

func CreateBaseEntryWebSocketMessage

func CreateBaseEntryWebSocketMessage(base *api.BaseEntry) ([]byte, error)

func CreateFullEntryWebSocketMessage

func CreateFullEntryWebSocketMessage(entry *api.Entry) ([]byte, error)

func CreateWebsocketQueryMetadataMessage

func CreateWebsocketQueryMetadataMessage(base *basenine.Metadata) ([]byte, error)

func CreateWebsocketStartTimeMessage

func CreateWebsocketStartTimeMessage(base int64) ([]byte, error)

func CreateWebsocketToastMessage

func CreateWebsocketToastMessage(base *ToastMessage) ([]byte, error)

func CreateWebsocketWorkerEntryMessage

func CreateWebsocketWorkerEntryMessage(base *api.OutputChannelItem) ([]byte, error)

Types

type Config

type Config struct {
	MaxDBSizeBytes     int64         `json:"maxDBSizeBytes"`
	InsertionFilter    string        `json:"insertionFilter"`
	PullPolicy         string        `json:"pullPolicy"`
	LogLevel           logging.Level `json:"logLevel"`
	WorkerResources    Resources     `json:"workerResources"`
	ResourcesNamespace string        `json:"resourceNamespace"`
	DatabasePath       string        `json:"databasePath"`
	ServiceMap         bool          `json:"serviceMap"`
	OAS                OASConfig     `json:"oas"`
}

type EntriesRequest

type EntriesRequest struct {
	LeftOff   string `form:"leftOff" validate:"required"`
	Direction int    `form:"direction" validate:"required,oneof='1' '-1'"`
	Query     string `form:"query"`
	Limit     int    `form:"limit" validate:"required,min=1"`
	TimeoutMs int    `form:"timeoutMs" validate:"min=1"`
}

type EntriesResponse

type EntriesResponse struct {
	Data []interface{}      `json:"data"`
	Meta *basenine.Metadata `json:"meta"`
}

type HealthResponse

type HealthResponse struct {
	TargettedPods         []*PodInfo      `json:"targettedPods"`
	ConnectedWorkersCount int             `json:"connectedWorkersCount"`
	WorkersStatus         []*WorkerStatus `json:"workersStatus"`
}

type NodeToPodsMap

type NodeToPodsMap map[string][]v1.Pod

func (NodeToPodsMap) Summary

func (np NodeToPodsMap) Summary() map[string][]string

type OASConfig

type OASConfig struct {
	Enable        bool `yaml:"enabled" default:"true"`
	MaxExampleLen int  `yaml:"max-example-len" default:"10240"`
}

type PodInfo

type PodInfo struct {
	Name      string `json:"name"`
	NodeName  string `json:"nodeName"`
	Namespace string `json:"namespace"`
}

type Resources

type Resources struct {
	CpuLimit       string `yaml:"cpu-limit" default:"750m"`
	MemoryLimit    string `yaml:"memory-limit" default:"1Gi"`
	CpuRequests    string `yaml:"cpu-requests" default:"50m"`
	MemoryRequests string `yaml:"memory-requests" default:"50Mi"`
}

type SingleEntryRequest

type SingleEntryRequest struct {
	Query string `form:"query"`
}

type TargettedPodStatus

type TargettedPodStatus struct {
	Name        string `json:"name"`
	Namespace   string `json:"namespace"`
	IsTargetted bool   `json:"isTargetted"`
}

type ToastMessage

type ToastMessage struct {
	Type      string `json:"type"`
	AutoClose uint   `json:"autoClose"`
	Text      string `json:"text"`
}

type VersionResponse

type VersionResponse struct {
	Ver string `json:"ver"`
}

type WebSocketEntryMessage

type WebSocketEntryMessage struct {
	*WebSocketMessageMetadata
	Data *api.BaseEntry `json:"data,omitempty"`
}

type WebSocketFullEntryMessage

type WebSocketFullEntryMessage struct {
	*WebSocketMessageMetadata
	Data *api.Entry `json:"data,omitempty"`
}

type WebSocketMessageMetadata

type WebSocketMessageMetadata struct {
	MessageType WebSocketMessageType `json:"messageType,omitempty"`
}

type WebSocketMessageType

type WebSocketMessageType string
const (
	WebSocketMessageTypeEntry               WebSocketMessageType = "entry"
	WebSocketMessageTypeFullEntry           WebSocketMessageType = "fullEntry"
	WebSocketMessageTypeWorkerEntry         WebSocketMessageType = "targettedEntry"
	WebSocketMessageTypeUpdateStatus        WebSocketMessageType = "status"
	WebSocketMessageTypeUpdateTargettedPods WebSocketMessageType = "targettedPods"
	WebSocketMessageTypeToast               WebSocketMessageType = "toast"
	WebSocketMessageTypeQueryMetadata       WebSocketMessageType = "queryMetadata"
	WebSocketMessageTypeStartTime           WebSocketMessageType = "startTime"
	WebSocketMessageTypeWorkerConfig        WebSocketMessageType = "workerConfig"
)

type WebSocketQueryMetadataMessage

type WebSocketQueryMetadataMessage struct {
	*WebSocketMessageMetadata
	Data *basenine.Metadata `json:"data,omitempty"`
}

type WebSocketStartTimeMessage

type WebSocketStartTimeMessage struct {
	*WebSocketMessageMetadata
	Data int64 `json:"data"`
}

type WebSocketStatusMessage

type WebSocketStatusMessage struct {
	*WebSocketMessageMetadata
	TargettingStatus []TargettedPodStatus `json:"targettingStatus"`
}

func CreateWebSocketStatusMessage

func CreateWebSocketStatusMessage(targettedPodsStatus []TargettedPodStatus) WebSocketStatusMessage

type WebSocketTargettedPodsMessage

type WebSocketTargettedPodsMessage struct {
	*WebSocketMessageMetadata
	NodeToTargettedPodsMap NodeToPodsMap `json:"nodeToTargettedPodsMap"`
}

func CreateWebSocketTargettedPodsMessage

func CreateWebSocketTargettedPodsMessage(nodeToTargettedPodsMap NodeToPodsMap) WebSocketTargettedPodsMessage

type WebSocketToastMessage

type WebSocketToastMessage struct {
	*WebSocketMessageMetadata
	Data *ToastMessage `json:"data,omitempty"`
}

type WebSocketWorkerConfigMessage

type WebSocketWorkerConfigMessage struct {
	*WebSocketMessageMetadata
	TargettedPod []v1.Pod `json:"pods"`
}

type WebSocketWorkerEntryMessage

type WebSocketWorkerEntryMessage struct {
	*WebSocketMessageMetadata
	Data *api.OutputChannelItem
}

type WorkerStatus

type WorkerStatus struct {
	Name     string `json:"name"`
	NodeName string `json:"nodeName"`
	Status   string `json:"status"`
}

Jump to

Keyboard shortcuts

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