cadvisor: github.com/google/cadvisor/info/v1 Index | Files | Directories

package v1

import "github.com/google/cadvisor/info/v1"

Types used for docker containers.

Index

Package Files

container.go docker.go machine.go metric.go

Constants

const (
    EventOom               EventType = "oom"
    EventOomKill                     = "oomKill"
    EventContainerCreation           = "containerCreation"
    EventContainerDeletion           = "containerDeletion"
)
const (
    GCE             CloudProvider = "GCE"
    AWS                           = "AWS"
    Azure                         = "Azure"
    Baremetal                     = "Baremetal"
    UnknownProvider               = "Unknown"
)

type AcceleratorStats Uses

type AcceleratorStats struct {
    // Make of the accelerator (nvidia, amd, google etc.)
    Make string `json:"make"`

    // Model of the accelerator (tesla-p100, tesla-k80 etc.)
    Model string `json:"model"`

    // ID of the accelerator.
    ID  string `json:"id"`

    // Total accelerator memory.
    // unit: bytes
    MemoryTotal uint64 `json:"memory_total"`

    // Total accelerator memory allocated.
    // unit: bytes
    MemoryUsed uint64 `json:"memory_used"`

    // Percent of time over the past sample period during which
    // the accelerator was actively processing.
    DutyCycle uint64 `json:"duty_cycle"`
}

type Cache Uses

type Cache struct {
    // Size of memory cache in bytes.
    Size uint64 `json:"size"`
    // Type of memory cache: data, instruction, or unified.
    Type string `json:"type"`
    // Level (distance from cpus) in a multi-level cache hierarchy.
    Level int `json:"level"`
}

type CloudProvider Uses

type CloudProvider string

type ContainerInfo Uses

type ContainerInfo struct {
    ContainerReference

    // The direct subcontainers of the current container.
    Subcontainers []ContainerReference `json:"subcontainers,omitempty"`

    // The isolation used in the container.
    Spec ContainerSpec `json:"spec,omitempty"`

    // Historical statistics gathered from the container.
    Stats []*ContainerStats `json:"stats,omitempty"`
}

func (*ContainerInfo) Eq Uses

func (self *ContainerInfo) Eq(b *ContainerInfo) bool

TODO(vmarmol): Refactor to not need this equality comparison. ContainerInfo may be (un)marshaled by json or other en/decoder. In that case, the Timestamp field in each stats/sample may not be precisely en/decoded. This will lead to small but acceptable differences between a ContainerInfo and its encode-then-decode version. Eq() is used to compare two ContainerInfo accepting small difference (<10ms) of Time fields.

func (*ContainerInfo) StatsAfter Uses

func (self *ContainerInfo) StatsAfter(ref time.Time) []*ContainerStats

func (*ContainerInfo) StatsEndTime Uses

func (self *ContainerInfo) StatsEndTime() time.Time

func (*ContainerInfo) StatsStartTime Uses

func (self *ContainerInfo) StatsStartTime() time.Time

type ContainerInfoRequest Uses

type ContainerInfoRequest struct {
    // Max number of stats to return. Specify -1 for all stats currently available.
    // Default: 60
    NumStats int `json:"num_stats,omitempty"`

    // Start time for which to query information.
    // If omitted, the beginning of time is assumed.
    Start time.Time `json:"start,omitempty"`

    // End time for which to query information.
    // If omitted, current time is assumed.
    End time.Time `json:"end,omitempty"`
}

ContainerInfoRequest is used when users check a container info from the REST API. It specifies how much data users want to get about a container

func DefaultContainerInfoRequest Uses

func DefaultContainerInfoRequest() ContainerInfoRequest

Returns a ContainerInfoRequest with all default values specified.

func (*ContainerInfoRequest) Equals Uses

func (self *ContainerInfoRequest) Equals(other ContainerInfoRequest) bool

type ContainerReference Uses

type ContainerReference struct {
    // The container id
    Id  string `json:"id,omitempty"`

    // The absolute name of the container. This is unique on the machine.
    Name string `json:"name"`

    // Other names by which the container is known within a certain namespace.
    // This is unique within that namespace.
    Aliases []string `json:"aliases,omitempty"`

    // Namespace under which the aliases of a container are unique.
    // An example of a namespace is "docker" for Docker containers.
    Namespace string `json:"namespace,omitempty"`
}

Container reference contains enough information to uniquely identify a container

type ContainerReferenceSlice Uses

type ContainerReferenceSlice []ContainerReference

Sorts by container name.

func (ContainerReferenceSlice) Len Uses

func (self ContainerReferenceSlice) Len() int

func (ContainerReferenceSlice) Less Uses

func (self ContainerReferenceSlice) Less(i, j int) bool

func (ContainerReferenceSlice) Swap Uses

func (self ContainerReferenceSlice) Swap(i, j int)

type ContainerSpec Uses

type ContainerSpec struct {
    // Time at which the container was created.
    CreationTime time.Time `json:"creation_time,omitempty"`

    // Metadata labels associated with this container.
    Labels map[string]string `json:"labels,omitempty"`
    // Metadata envs associated with this container. Only whitelisted envs are added.
    Envs map[string]string `json:"envs,omitempty"`

    HasCpu bool    `json:"has_cpu"`
    Cpu    CpuSpec `json:"cpu,omitempty"`

    HasMemory bool       `json:"has_memory"`
    Memory    MemorySpec `json:"memory,omitempty"`

    HasNetwork bool `json:"has_network"`

    HasProcesses bool        `json:"has_processes"`
    Processes    ProcessSpec `json:"processes,omitempty"`

    HasFilesystem bool `json:"has_filesystem"`

    // HasDiskIo when true, indicates that DiskIo stats will be available.
    HasDiskIo bool `json:"has_diskio"`

    HasCustomMetrics bool         `json:"has_custom_metrics"`
    CustomMetrics    []MetricSpec `json:"custom_metrics,omitempty"`

    // Image name used for this container.
    Image string `json:"image,omitempty"`
}

func (*ContainerSpec) Eq Uses

func (self *ContainerSpec) Eq(b *ContainerSpec) bool

type ContainerStats Uses

type ContainerStats struct {
    // The time of this stat point.
    Timestamp time.Time    `json:"timestamp"`
    Cpu       CpuStats     `json:"cpu,omitempty"`
    DiskIo    DiskIoStats  `json:"diskio,omitempty"`
    Memory    MemoryStats  `json:"memory,omitempty"`
    Network   NetworkStats `json:"network,omitempty"`

    // Filesystem statistics
    Filesystem []FsStats `json:"filesystem,omitempty"`

    // Task load stats
    TaskStats LoadStats `json:"task_stats,omitempty"`

    // Metrics for Accelerators. Each Accelerator corresponds to one element in the array.
    Accelerators []AcceleratorStats `json:"accelerators,omitempty"`

    // ProcessStats for Containers
    Processes ProcessStats `json:"processes,omitempty"`

    // Custom metrics from all collectors
    CustomMetrics map[string][]MetricVal `json:"custom_metrics,omitempty"`
}

func (*ContainerStats) Eq Uses

func (a *ContainerStats) Eq(b *ContainerStats) bool

This function is useful because we do not require precise time representation.

func (*ContainerStats) StatsEq Uses

func (a *ContainerStats) StatsEq(b *ContainerStats) bool

Checks equality of the stats values.

type Core Uses

type Core struct {
    Id      int     `json:"core_id"`
    Threads []int   `json:"thread_ids"`
    Caches  []Cache `json:"caches"`
}

type CpuCFS Uses

type CpuCFS struct {
    // Total number of elapsed enforcement intervals.
    Periods uint64 `json:"periods"`

    // Total number of times tasks in the cgroup have been throttled.
    ThrottledPeriods uint64 `json:"throttled_periods"`

    // Total time duration for which tasks in the cgroup have been throttled.
    // Unit: nanoseconds.
    ThrottledTime uint64 `json:"throttled_time"`
}

Cpu Completely Fair Scheduler statistics.

type CpuSchedstat Uses

type CpuSchedstat struct {

    // time spent on the cpu
    RunTime uint64 `json:"run_time"`
    // time spent waiting on a runqueue
    RunqueueTime uint64 `json:"runqueue_time"`
    // # of timeslices run on this cpu
    RunPeriods uint64 `json:"run_periods"`
}

Cpu Aggregated scheduler statistics

type CpuSpec Uses

type CpuSpec struct {
    Limit    uint64 `json:"limit"`
    MaxLimit uint64 `json:"max_limit"`
    Mask     string `json:"mask,omitempty"`
    Quota    uint64 `json:"quota,omitempty"`
    Period   uint64 `json:"period,omitempty"`
}

type CpuStats Uses

type CpuStats struct {
    Usage     CpuUsage     `json:"usage"`
    CFS       CpuCFS       `json:"cfs"`
    Schedstat CpuSchedstat `json:"schedstat"`
    // Smoothed average of number of runnable threads x 1000.
    // We multiply by thousand to avoid using floats, but preserving precision.
    // Load is smoothed over the last 10 seconds. Instantaneous value can be read
    // from LoadStats.NrRunning.
    LoadAverage int32 `json:"load_average"`
}

All CPU usage metrics are cumulative from the creation of the container

type CpuUsage Uses

type CpuUsage struct {
    // Total CPU usage.
    // Unit: nanoseconds.
    Total uint64 `json:"total"`

    // Per CPU/core usage of the container.
    // Unit: nanoseconds.
    PerCpu []uint64 `json:"per_cpu_usage,omitempty"`

    // Time spent in user space.
    // Unit: nanoseconds.
    User uint64 `json:"user"`

    // Time spent in kernel space.
    // Unit: nanoseconds.
    System uint64 `json:"system"`
}

CPU usage time statistics.

type DataType Uses

type DataType string

DataType for metric being exported.

const (
    IntType   DataType = "int"
    FloatType DataType = "float"
)

type DiskInfo Uses

type DiskInfo struct {
    // device name
    Name string `json:"name"`

    // Major number
    Major uint64 `json:"major"`

    // Minor number
    Minor uint64 `json:"minor"`

    // Size in bytes
    Size uint64 `json:"size"`

    // I/O Scheduler - one of "none", "noop", "cfq", "deadline"
    Scheduler string `json:"scheduler"`
}

type DiskIoStats Uses

type DiskIoStats struct {
    IoServiceBytes []PerDiskStats `json:"io_service_bytes,omitempty"`
    IoServiced     []PerDiskStats `json:"io_serviced,omitempty"`
    IoQueued       []PerDiskStats `json:"io_queued,omitempty"`
    Sectors        []PerDiskStats `json:"sectors,omitempty"`
    IoServiceTime  []PerDiskStats `json:"io_service_time,omitempty"`
    IoWaitTime     []PerDiskStats `json:"io_wait_time,omitempty"`
    IoMerged       []PerDiskStats `json:"io_merged,omitempty"`
    IoTime         []PerDiskStats `json:"io_time,omitempty"`
}

type DockerImage Uses

type DockerImage struct {
    ID          string   `json:"id"`
    RepoTags    []string `json:"repo_tags"` // repository name and tags.
    Created     int64    `json:"created"`   // unix time since creation.
    VirtualSize int64    `json:"virtual_size"`
    Size        int64    `json:"size"`
}

type DockerStatus Uses

type DockerStatus struct {
    Version       string            `json:"version"`
    APIVersion    string            `json:"api_version"`
    KernelVersion string            `json:"kernel_version"`
    OS            string            `json:"os"`
    Hostname      string            `json:"hostname"`
    RootDir       string            `json:"root_dir"`
    Driver        string            `json:"driver"`
    DriverStatus  map[string]string `json:"driver_status"`
    ExecDriver    string            `json:"exec_driver"`
    NumImages     int               `json:"num_images"`
    NumContainers int               `json:"num_containers"`
}

type Event Uses

type Event struct {
    // the absolute container name for which the event occurred
    ContainerName string `json:"container_name"`

    // the time at which the event occurred
    Timestamp time.Time `json:"timestamp"`

    // the type of event. EventType is an enumerated type
    EventType EventType `json:"event_type"`

    // the original event object and all of its extraneous data, ex. an
    // OomInstance
    EventData EventData `json:"event_data,omitempty"`
}

Event contains information general to events such as the time at which they occurred, their specific type, and the actual event. Event types are differentiated by the EventType field of Event.

type EventData Uses

type EventData struct {
    // Information about an OOM kill event.
    OomKill *OomKillEventData `json:"oom,omitempty"`
}

Extra information about an event. Only one type will be set.

type EventType Uses

type EventType string

EventType is an enumerated type which lists the categories under which events may fall. The Event field EventType is populated by this enum.

type FsInfo Uses

type FsInfo struct {
    // Block device associated with the filesystem.
    Device string `json:"device"`
    // DeviceMajor is the major identifier of the device, used for correlation with blkio stats
    DeviceMajor uint64 `json:"-"`
    // DeviceMinor is the minor identifier of the device, used for correlation with blkio stats
    DeviceMinor uint64 `json:"-"`

    // Total number of bytes available on the filesystem.
    Capacity uint64 `json:"capacity"`

    // Type of device.
    Type string `json:"type"`

    // Total number of inodes available on the filesystem.
    Inodes uint64 `json:"inodes"`

    // HasInodes when true, indicates that Inodes info will be available.
    HasInodes bool `json:"has_inodes"`
}

type FsStats Uses

type FsStats struct {
    // The block device name associated with the filesystem.
    Device string `json:"device,omitempty"`

    // Type of the filesytem.
    Type string `json:"type"`

    // Number of bytes that can be consumed by the container on this filesystem.
    Limit uint64 `json:"capacity"`

    // Number of bytes that is consumed by the container on this filesystem.
    Usage uint64 `json:"usage"`

    // Base Usage that is consumed by the container's writable layer.
    // This field is only applicable for docker container's as of now.
    BaseUsage uint64 `json:"base_usage"`

    // Number of bytes available for non-root user.
    Available uint64 `json:"available"`

    // HasInodes when true, indicates that Inodes info will be available.
    HasInodes bool `json:"has_inodes"`

    // Number of Inodes
    Inodes uint64 `json:"inodes"`

    // Number of available Inodes
    InodesFree uint64 `json:"inodes_free"`

    // Number of reads completed
    // This is the total number of reads completed successfully.
    ReadsCompleted uint64 `json:"reads_completed"`

    // Number of reads merged
    // Reads and writes which are adjacent to each other may be merged for
    // efficiency.  Thus two 4K reads may become one 8K read before it is
    // ultimately handed to the disk, and so it will be counted (and queued)
    // as only one I/O.  This field lets you know how often this was done.
    ReadsMerged uint64 `json:"reads_merged"`

    // Number of sectors read
    // This is the total number of sectors read successfully.
    SectorsRead uint64 `json:"sectors_read"`

    // Number of milliseconds spent reading
    // This is the total number of milliseconds spent by all reads (as
    // measured from __make_request() to end_that_request_last()).
    ReadTime uint64 `json:"read_time"`

    // Number of writes completed
    // This is the total number of writes completed successfully.
    WritesCompleted uint64 `json:"writes_completed"`

    // Number of writes merged
    // See the description of reads merged.
    WritesMerged uint64 `json:"writes_merged"`

    // Number of sectors written
    // This is the total number of sectors written successfully.
    SectorsWritten uint64 `json:"sectors_written"`

    // Number of milliseconds spent writing
    // This is the total number of milliseconds spent by all writes (as
    // measured from __make_request() to end_that_request_last()).
    WriteTime uint64 `json:"write_time"`

    // Number of I/Os currently in progress
    // The only field that should go to zero. Incremented as requests are
    // given to appropriate struct request_queue and decremented as they finish.
    IoInProgress uint64 `json:"io_in_progress"`

    // Number of milliseconds spent doing I/Os
    // This field increases so long as field 9 is nonzero.
    IoTime uint64 `json:"io_time"`

    // weighted number of milliseconds spent doing I/Os
    // This field is incremented at each I/O start, I/O completion, I/O
    // merge, or read of these stats by the number of I/Os in progress
    // (field 9) times the number of milliseconds spent doing I/O since the
    // last update of this field.  This can provide an easy measure of both
    // I/O completion time and the backlog that may be accumulating.
    WeightedIoTime uint64 `json:"weighted_io_time"`
}

type HugePagesInfo Uses

type HugePagesInfo struct {
    // huge page size (in kB)
    PageSize uint64 `json:"page_size"`

    // number of huge pages
    NumPages uint64 `json:"num_pages"`
}

type InstanceID Uses

type InstanceID string
const (
    UnNamedInstance InstanceID = "None"
)

type InstanceType Uses

type InstanceType string
const (
    NoInstance      InstanceType = "None"
    UnknownInstance              = "Unknown"
)

type InterfaceStats Uses

type InterfaceStats struct {
    // The name of the interface.
    Name string `json:"name"`
    // Cumulative count of bytes received.
    RxBytes uint64 `json:"rx_bytes"`
    // Cumulative count of packets received.
    RxPackets uint64 `json:"rx_packets"`
    // Cumulative count of receive errors encountered.
    RxErrors uint64 `json:"rx_errors"`
    // Cumulative count of packets dropped while receiving.
    RxDropped uint64 `json:"rx_dropped"`
    // Cumulative count of bytes transmitted.
    TxBytes uint64 `json:"tx_bytes"`
    // Cumulative count of packets transmitted.
    TxPackets uint64 `json:"tx_packets"`
    // Cumulative count of transmit errors encountered.
    TxErrors uint64 `json:"tx_errors"`
    // Cumulative count of packets dropped while transmitting.
    TxDropped uint64 `json:"tx_dropped"`
}

type LoadStats Uses

type LoadStats struct {
    // Number of sleeping tasks.
    NrSleeping uint64 `json:"nr_sleeping"`

    // Number of running tasks.
    NrRunning uint64 `json:"nr_running"`

    // Number of tasks in stopped state
    NrStopped uint64 `json:"nr_stopped"`

    // Number of tasks in uninterruptible state
    NrUninterruptible uint64 `json:"nr_uninterruptible"`

    // Number of tasks waiting on IO
    NrIoWait uint64 `json:"nr_io_wait"`
}

This mirrors kernel internal structure.

type MachineInfo Uses

type MachineInfo struct {
    // The number of cores in this machine.
    NumCores int `json:"num_cores"`

    // Maximum clock speed for the cores, in KHz.
    CpuFrequency uint64 `json:"cpu_frequency_khz"`

    // The amount of memory (in bytes) in this machine
    MemoryCapacity uint64 `json:"memory_capacity"`

    // HugePages on this machine.
    HugePages []HugePagesInfo `json:"hugepages"`

    // The machine id
    MachineID string `json:"machine_id"`

    // The system uuid
    SystemUUID string `json:"system_uuid"`

    // The boot id
    BootID string `json:"boot_id"`

    // Filesystems on this machine.
    Filesystems []FsInfo `json:"filesystems"`

    // Disk map
    DiskMap map[string]DiskInfo `json:"disk_map"`

    // Network devices
    NetworkDevices []NetInfo `json:"network_devices"`

    // Machine Topology
    // Describes cpu/memory layout and hierarchy.
    Topology []Node `json:"topology"`

    // Cloud provider the machine belongs to.
    CloudProvider CloudProvider `json:"cloud_provider"`

    // Type of cloud instance (e.g. GCE standard) the machine is.
    InstanceType InstanceType `json:"instance_type"`

    // ID of cloud instance (e.g. instance-1) given to it by the cloud provider.
    InstanceID InstanceID `json:"instance_id"`
}

type MachineInfoFactory Uses

type MachineInfoFactory interface {
    GetMachineInfo() (*MachineInfo, error)
    GetVersionInfo() (*VersionInfo, error)
}

type MemorySpec Uses

type MemorySpec struct {
    // The amount of memory requested. Default is unlimited (-1).
    // Units: bytes.
    Limit uint64 `json:"limit,omitempty"`

    // The amount of guaranteed memory.  Default is 0.
    // Units: bytes.
    Reservation uint64 `json:"reservation,omitempty"`

    // The amount of swap space requested. Default is unlimited (-1).
    // Units: bytes.
    SwapLimit uint64 `json:"swap_limit,omitempty"`
}

type MemoryStats Uses

type MemoryStats struct {
    // Current memory usage, this includes all memory regardless of when it was
    // accessed.
    // Units: Bytes.
    Usage uint64 `json:"usage"`

    // Maximum memory usage recorded.
    // Units: Bytes.
    MaxUsage uint64 `json:"max_usage"`

    // Number of bytes of page cache memory.
    // Units: Bytes.
    Cache uint64 `json:"cache"`

    // The amount of anonymous and swap cache memory (includes transparent
    // hugepages).
    // Units: Bytes.
    RSS uint64 `json:"rss"`

    // The amount of swap currently used by the processes in this cgroup
    // Units: Bytes.
    Swap uint64 `json:"swap"`

    // The amount of memory used for mapped files (includes tmpfs/shmem)
    MappedFile uint64 `json:"mapped_file"`

    // The amount of working set memory, this includes recently accessed memory,
    // dirty memory, and kernel memory. Working set is <= "usage".
    // Units: Bytes.
    WorkingSet uint64 `json:"working_set"`

    Failcnt uint64 `json:"failcnt"`

    ContainerData    MemoryStatsMemoryData `json:"container_data,omitempty"`
    HierarchicalData MemoryStatsMemoryData `json:"hierarchical_data,omitempty"`
}

type MemoryStatsMemoryData Uses

type MemoryStatsMemoryData struct {
    Pgfault    uint64 `json:"pgfault"`
    Pgmajfault uint64 `json:"pgmajfault"`
}

type MetricSpec Uses

type MetricSpec struct {
    // The name of the metric.
    Name string `json:"name"`

    // Type of the metric.
    Type MetricType `json:"type"`

    // Data Type for the stats.
    Format DataType `json:"format"`

    // Display Units for the stats.
    Units string `json:"units"`
}

Spec for custom metric.

type MetricType Uses

type MetricType string

Type of metric being exported.

const (
    // Instantaneous value. May increase or decrease.
    MetricGauge MetricType = "gauge"

    // A counter-like value that is only expected to increase.
    MetricCumulative MetricType = "cumulative"

    // Rate over a time period.
    MetricDelta MetricType = "delta"
)

type MetricVal Uses

type MetricVal struct {
    // Label associated with a metric
    Label string `json:"label,omitempty"`

    // Time at which the metric was queried
    Timestamp time.Time `json:"timestamp"`

    // The value of the metric at this point.
    IntValue   int64   `json:"int_value,omitempty"`
    FloatValue float64 `json:"float_value,omitempty"`
}

An exported metric.

type MetricValBasic Uses

type MetricValBasic struct {
    // Time at which the metric was queried
    Timestamp time.Time `json:"timestamp"`

    // The value of the metric at this point.
    IntValue   int64   `json:"int_value,omitempty"`
    FloatValue float64 `json:"float_value,omitempty"`
}

An exported metric.

type NetInfo Uses

type NetInfo struct {
    // Device name
    Name string `json:"name"`

    // Mac Address
    MacAddress string `json:"mac_address"`

    // Speed in MBits/s
    Speed int64 `json:"speed"`

    // Maximum Transmission Unit
    Mtu int64 `json:"mtu"`
}

type NetworkStats Uses

type NetworkStats struct {
    InterfaceStats `json:",inline"`
    Interfaces     []InterfaceStats `json:"interfaces,omitempty"`
    // TCP connection stats (Established, Listen...)
    Tcp TcpStat `json:"tcp"`
    // TCP6 connection stats (Established, Listen...)
    Tcp6 TcpStat `json:"tcp6"`
    // UDP connection stats
    Udp UdpStat `json:"udp"`
    // UDP6 connection stats
    Udp6 UdpStat `json:"udp6"`
}

type Node Uses

type Node struct {
    Id  int `json:"node_id"`
    // Per-node memory
    Memory uint64  `json:"memory"`
    Cores  []Core  `json:"cores"`
    Caches []Cache `json:"caches"`
}

func (*Node) AddNodeCache Uses

func (self *Node) AddNodeCache(c Cache)

func (*Node) AddPerCoreCache Uses

func (self *Node) AddPerCoreCache(c Cache)

func (*Node) AddThread Uses

func (self *Node) AddThread(thread int, core int)

func (*Node) FindCore Uses

func (self *Node) FindCore(id int) (bool, int)

type OomKillEventData Uses

type OomKillEventData struct {
    // process id of the killed process
    Pid int `json:"pid"`

    // The name of the killed process
    ProcessName string `json:"process_name"`
}

Information related to an OOM kill instance

type PerDiskStats Uses

type PerDiskStats struct {
    Device string            `json:"device"`
    Major  uint64            `json:"major"`
    Minor  uint64            `json:"minor"`
    Stats  map[string]uint64 `json:"stats"`
}

type ProcessSpec Uses

type ProcessSpec struct {
    Limit uint64 `json:"limit,omitempty"`
}

type ProcessStats Uses

type ProcessStats struct {
    // Number of processes
    ProcessCount uint64 `json:"process_count"`

    // Number of open file descriptors
    FdCount uint64 `json:"fd_count"`

    // Number of sockets
    SocketCount uint64 `json:"socket_count"`

    // Number of threads currently in container
    ThreadsCurrent uint64 `json:"threads_current,omitempty"`

    // Maxium number of threads allowed in container
    ThreadsMax uint64 `json:"threads_max,omitempty"`
}

type TcpStat Uses

type TcpStat struct {
    // Count of TCP connections in state "Established"
    Established uint64
    // Count of TCP connections in state "Syn_Sent"
    SynSent uint64
    // Count of TCP connections in state "Syn_Recv"
    SynRecv uint64
    // Count of TCP connections in state "Fin_Wait1"
    FinWait1 uint64
    // Count of TCP connections in state "Fin_Wait2"
    FinWait2 uint64
    // Count of TCP connections in state "Time_Wait
    TimeWait uint64
    // Count of TCP connections in state "Close"
    Close uint64
    // Count of TCP connections in state "Close_Wait"
    CloseWait uint64
    // Count of TCP connections in state "Listen_Ack"
    LastAck uint64
    // Count of TCP connections in state "Listen"
    Listen uint64
    // Count of TCP connections in state "Closing"
    Closing uint64
}

type UdpStat Uses

type UdpStat struct {
    // Count of UDP sockets in state "Listen"
    Listen uint64

    // Count of UDP packets dropped by the IP stack
    Dropped uint64

    // Count of packets Queued for Receieve
    RxQueued uint64

    // Count of packets Queued for Transmit
    TxQueued uint64
}

type VersionInfo Uses

type VersionInfo struct {
    // Kernel version.
    KernelVersion string `json:"kernel_version"`

    // OS image being used for cadvisor container, or host image if running on host directly.
    ContainerOsVersion string `json:"container_os_version"`

    // Docker version.
    DockerVersion string `json:"docker_version"`

    // Docker API Version
    DockerAPIVersion string `json:"docker_api_version"`

    // cAdvisor version.
    CadvisorVersion string `json:"cadvisor_version"`
    // cAdvisor git revision.
    CadvisorRevision string `json:"cadvisor_revision"`
}

Directories

PathSynopsis
test

Package v1 imports 2 packages (graph) and is imported by 4113 packages. Updated 2019-07-15. Refresh now. Tools for package owners.