docker

package
v0.0.0-...-b022d11 Latest Latest
Warning

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

Go to latest
Published: Oct 11, 2023 License: MIT Imports: 34 Imported by: 0

Documentation

Index

Constants

View Source
const (
	ReadOp  = "Read"
	WriteOp = "Write"
)

Variables

This section is empty.

Functions

func InitClient

func InitClient(config *types.Config, nodeIP string)

InitClient init docker client

Types

type BlkIOEntry

type BlkIOEntry struct {
	Dev   string
	Value uint64
}

type BlkIOMetrics

type BlkIOMetrics struct {
	IOServiceBytesReadRecursive  []*BlkIOEntry
	IOServiceBytesWriteRecursive []*BlkIOEntry
	IOServicedReadRecusive       []*BlkIOEntry
	IOServicedWriteRecusive      []*BlkIOEntry
}

per device level

type Container

type Container struct {
	coretypes.StatusMeta
	Pid         int
	Name        string
	EntryPoint  string
	Ident       string
	CPUNum      float64
	CPUQuota    int64
	CPUPeriod   int64
	Memory      int64
	Labels      map[string]string
	Env         map[string]string
	HealthCheck *coretypes.HealthCheck
	LocalIP     string `json:"-"`
}

Container docker container

func (*Container) CheckHealth

func (c *Container) CheckHealth(ctx context.Context, timeout time.Duration) bool

CheckHealth check container's health status

type Docker

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

Docker .

func GetClient

func GetClient() *Docker

GetClient .

func New

func New(ctx context.Context, config *types.Config, nodeIP string) (*Docker, error)

New returns a wrapper of docker client

func (*Docker) AttachWorkload

func (d *Docker) AttachWorkload(ctx context.Context, ID string) (io.Reader, io.Reader, error)

AttachWorkload .

func (*Docker) CollectWorkloadMetrics

func (d *Docker) CollectWorkloadMetrics(ctx context.Context, ID string)

CollectWorkloadMetrics .

func (*Docker) Events

func (d *Docker) Events(ctx context.Context, filters map[string]string) (<-chan *types.WorkloadEventMessage, <-chan error)

Events returns the events of workloads' changes

func (*Docker) GetStatus

func (d *Docker) GetStatus(ctx context.Context, ID string, checkHealth bool) (*types.WorkloadStatus, error)

GetStatus checks workload's status first, then returns workload status

func (*Docker) GetWorkloadName

func (d *Docker) GetWorkloadName(ctx context.Context, ID string) (string, error)

GetWorkloadName returns the name of workload

func (*Docker) IsDaemonRunning

func (d *Docker) IsDaemonRunning(ctx context.Context) bool

IsDaemonRunning returns if the runtime daemon is running.

func (*Docker) ListWorkloadIDs

func (d *Docker) ListWorkloadIDs(ctx context.Context, filters map[string]string) ([]string, error)

ListWorkloadIDs lists workload IDs filtered by given condition

func (*Docker) LogFieldsExtra

func (d *Docker) LogFieldsExtra(ctx context.Context, ID string) (map[string]string, error)

LogFieldsExtra .

func (*Docker) Name

func (d *Docker) Name() string

Name returns the name of runtime

type MetricsClient

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

MetricsClient combine statsd and prometheus

func NewMetricsClient

func NewMetricsClient(statsd, hostname string, container *Container) *MetricsClient

NewMetricsClient new a metrics client

func (*MetricsClient) BytesRecv

func (m *MetricsClient) BytesRecv(nic string, i float64)

BytesRecv set bytes recv

func (*MetricsClient) BytesSent

func (m *MetricsClient) BytesSent(nic string, i float64)

BytesSent set bytes send

func (*MetricsClient) CPUContainerSysUsage

func (m *MetricsClient) CPUContainerSysUsage(i float64)

CPUContainerSysUsage set cpu sys usage in container view

func (*MetricsClient) CPUContainerUsage

func (m *MetricsClient) CPUContainerUsage(i float64)

CPUContainerUsage set cpu usage in container view

func (*MetricsClient) CPUContainerUserUsage

func (m *MetricsClient) CPUContainerUserUsage(i float64)

CPUContainerUserUsage set cpu user usage in container view

func (*MetricsClient) CPUHostSysUsage

func (m *MetricsClient) CPUHostSysUsage(i float64)

CPUHostSysUsage set cpu sys usage in host view

func (*MetricsClient) CPUHostUsage

func (m *MetricsClient) CPUHostUsage(i float64)

CPUHostUsage set cpu usage in host view

func (*MetricsClient) CPUHostUserUsage

func (m *MetricsClient) CPUHostUserUsage(i float64)

CPUHostUserUsage set cpu user usage in host view

func (*MetricsClient) DropIn

func (m *MetricsClient) DropIn(nic string, i float64)

DropIn set inbound drop count

func (*MetricsClient) DropOut

func (m *MetricsClient) DropOut(nic string, i float64)

DropOut set outbound drop count

func (*MetricsClient) ErrIn

func (m *MetricsClient) ErrIn(nic string, i float64)

ErrIn set inbound err count

func (*MetricsClient) ErrOut

func (m *MetricsClient) ErrOut(nic string, i float64)

ErrOut set outbound err count

func (*MetricsClient) IOServiceBytesRead

func (m *MetricsClient) IOServiceBytesRead(dev string, i float64)

IOServiceBytesRead .

func (*MetricsClient) IOServiceBytesReadPerSecond

func (m *MetricsClient) IOServiceBytesReadPerSecond(dev string, i float64)

IOServiceBytesReadPerSecond .

func (*MetricsClient) IOServiceBytesWrite

func (m *MetricsClient) IOServiceBytesWrite(dev string, i float64)

IOServiceBytesWrite .

func (*MetricsClient) IOServiceBytesWritePerSecond

func (m *MetricsClient) IOServiceBytesWritePerSecond(dev string, i float64)

IOServiceBytesWritePerSecond .

func (*MetricsClient) IOServicedRead

func (m *MetricsClient) IOServicedRead(dev string, i float64)

IOServicedRead .

func (*MetricsClient) IOServicedReadPerSecond

func (m *MetricsClient) IOServicedReadPerSecond(dev string, i float64)

IOServicedReadPerSecond .

func (*MetricsClient) IOServicedWrite

func (m *MetricsClient) IOServicedWrite(dev string, i float64)

IOServicedWrite .

func (*MetricsClient) IOServicedWritePerSecond

func (m *MetricsClient) IOServicedWritePerSecond(dev string, i float64)

IOServicedWritePerSecond .

func (*MetricsClient) MemMaxUsage

func (m *MetricsClient) MemMaxUsage(i float64)

MemMaxUsage set memory max usage

func (*MetricsClient) MemPercent

func (m *MetricsClient) MemPercent(i float64)

MemPercent set memory percent

func (*MetricsClient) MemRSSPercent

func (m *MetricsClient) MemRSSPercent(i float64)

MemRSSPercent set memory percent

func (*MetricsClient) MemRss

func (m *MetricsClient) MemRss(i float64)

MemRss set memory rss

func (*MetricsClient) MemUsage

func (m *MetricsClient) MemUsage(i float64)

MemUsage set memory usage

func (*MetricsClient) PacketsRecv

func (m *MetricsClient) PacketsRecv(nic string, i float64)

PacketsRecv set packets recv

func (*MetricsClient) PacketsSent

func (m *MetricsClient) PacketsSent(nic string, i float64)

PacketsSent set packets send

func (*MetricsClient) Send

func (m *MetricsClient) Send(ctx context.Context) error

Send to statsd

func (*MetricsClient) Unregister

func (m *MetricsClient) Unregister()

Unregister unlink all prometheus things

Jump to

Keyboard shortcuts

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