Documentation ¶
Index ¶
Constants ¶
View Source
const ( ContainerName = "docker_container_name" ContainerCommand = "docker_container_command" ContainerPorts = "docker_container_ports" ContainerCreated = "docker_container_created" NetworkRxDropped = "network_rx_dropped" NetworkRxBytes = "network_rx_bytes" NetworkRxErrors = "network_rx_errors" NetworkTxPackets = "network_tx_packets" NetworkTxDropped = "network_tx_dropped" NetworkRxPackets = "network_rx_packets" NetworkTxErrors = "network_tx_errors" NetworkTxBytes = "network_tx_bytes" MemoryMaxUsage = "memory_max_usage" MemoryUsage = "memory_usage" MemoryFailcnt = "memory_failcnt" MemoryLimit = "memory_limit" CPUPercpuUsage = "cpu_per_cpu_usage" CPUUsageInUsermode = "cpu_usage_in_usermode" CPUTotalUsage = "cpu_total_usage" CPUUsageInKernelmode = "cpu_usage_in_kernelmode" CPUSystemCPUUsage = "cpu_system_cpu_usage" )
These constants are keys used in node metadata
View Source
const ( StartEvent = "start" DieEvent = "die" )
Consts exported for testing.
View Source
const ( ImageID = "docker_image_id" ImageName = "docker_image_name" )
Keys for use in NodeMetadata
View Source
const ( Addr = "addr" ContainerID = "docker_container_id" Domain = "domain" Name = "name" PID = "pid" Port = "port" )
These constants are keys used in node metadata TODO: use these constants in report/{mapping.go, detailed_node.go} - pending some circular references
Variables ¶
View Source
var ( DialStub = net.Dial NewClientConnStub = newClientConn )
Exported for testing
View Source
var ( NewDockerClientStub = newDockerClient NewContainerStub = NewContainer )
Vars exported for testing.
View Source
var (
NewProcessTreeStub = process.NewTree
)
These vars are exported for testing.
Functions ¶
This section is empty.
Types ¶
type Client ¶
type Client interface { ListContainers(docker_client.ListContainersOptions) ([]docker_client.APIContainers, error) InspectContainer(string) (*docker_client.Container, error) ListImages(docker_client.ListImagesOptions) ([]docker_client.APIImages, error) AddEventListener(chan<- *docker_client.APIEvents) error RemoveEventListener(chan *docker_client.APIEvents) error }
Client interface for mocking.
type ClientConn ¶
ClientConn is exported for testing
type Container ¶
type Container interface { ID() string Image() string PID() int GetNodeMetadata() report.NodeMetadata StartGatheringStats() error StopGatheringStats() }
Container represents a Docker container
func NewContainer ¶
NewContainer creates a new Container
type Registry ¶
type Registry interface { Stop() LockedPIDLookup(f func(func(int) Container)) WalkContainers(f func(Container)) WalkImages(f func(*docker_client.APIImages)) }
Registry keeps track of running docker containers and their images
type Reporter ¶
type Reporter struct {
// contains filtered or unexported fields
}
Reporter generate Reports containing Container and ContainerImage topologies
func NewReporter ¶
NewReporter makes a new Reporter
Click to show internal directories.
Click to hide internal directories.