metrics

package
v0.7.0 Latest Latest
Warning

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

Go to latest
Published: Mar 26, 2024 License: Apache-2.0 Imports: 5 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

View Source
var MetricHeaders = map[MetricType]string{
	CPUSecondsTotal:             "# HELP incus_cpu_seconds_total The total number of CPU time used in seconds.",
	CPUs:                        "# HELP incus_cpu_effective_total The total number of effective CPUs.",
	DiskReadBytesTotal:          "# HELP incus_disk_read_bytes_total The total number of bytes read.",
	DiskReadsCompletedTotal:     "# HELP incus_disk_reads_completed_total The total number of completed reads.",
	DiskWrittenBytesTotal:       "# HELP incus_disk_written_bytes_total The total number of bytes written.",
	DiskWritesCompletedTotal:    "# HELP incus_disk_writes_completed_total The total number of completed writes.",
	FilesystemAvailBytes:        "# HELP incus_filesystem_avail_bytes The number of available space in bytes.",
	FilesystemFreeBytes:         "# HELP incus_filesystem_free_bytes The number of free space in bytes.",
	FilesystemSizeBytes:         "# HELP incus_filesystem_size_bytes The size of the filesystem in bytes.",
	GoAllocBytes:                "# HELP incus_go_alloc_bytes Number of bytes allocated and still in use.",
	GoAllocBytesTotal:           "# HELP incus_go_alloc_bytes_total Total number of bytes allocated, even if freed.",
	GoBuckHashSysBytes:          "# HELP incus_go_buck_hash_sys_bytes Number of bytes used by the profiling bucket hash table.",
	GoFreesTotal:                "# HELP incus_go_frees_total Total number of frees.",
	GoGCSysBytes:                "# HELP incus_go_gc_sys_bytes Number of bytes used for garbage collection system metadata.",
	GoGoroutines:                "# HELP incus_go_goroutines Number of goroutines that currently exist.",
	GoHeapAllocBytes:            "# HELP incus_go_heap_alloc_bytes Number of heap bytes allocated and still in use.",
	GoHeapIdleBytes:             "# HELP incus_go_heap_idle_bytes Number of heap bytes waiting to be used.",
	GoHeapInuseBytes:            "# HELP incus_go_heap_inuse_bytes Number of heap bytes that are in use.",
	GoHeapObjects:               "# HELP incus_go_heap_objects Number of allocated objects.",
	GoHeapReleasedBytes:         "# HELP incus_go_heap_released_bytes Number of heap bytes released to OS.",
	GoHeapSysBytes:              "# HELP incus_go_heap_sys_bytes Number of heap bytes obtained from system.",
	GoLookupsTotal:              "# HELP incus_go_lookups_total Total number of pointer lookups.",
	GoMallocsTotal:              "# HELP incus_go_mallocs_total Total number of mallocs.",
	GoMCacheInuseBytes:          "# HELP incus_go_mcache_inuse_bytes Number of bytes in use by mcache structures.",
	GoMCacheSysBytes:            "# HELP incus_go_mcache_sys_bytes Number of bytes used for mcache structures obtained from system.",
	GoMSpanInuseBytes:           "# HELP incus_go_mspan_inuse_bytes Number of bytes in use by mspan structures.",
	GoMSpanSysBytes:             "# HELP incus_go_mspan_sys_bytes Number of bytes used for mspan structures obtained from system.",
	GoNextGCBytes:               "# HELP incus_go_next_gc_bytes Number of heap bytes when next garbage collection will take place.",
	GoOtherSysBytes:             "# HELP incus_go_other_sys_bytes Number of bytes used for other system allocations.",
	GoStackInuseBytes:           "# HELP incus_go_stack_inuse_bytes Number of bytes in use by the stack allocator.",
	GoStackSysBytes:             "# HELP incus_go_stack_sys_bytes Number of bytes obtained from system for stack allocator.",
	GoSysBytes:                  "# HELP incus_go_sys_bytes Number of bytes obtained from system.",
	MemoryActiveAnonBytes:       "# HELP incus_memory_Active_anon_bytes The amount of anonymous memory on active LRU list.",
	MemoryActiveFileBytes:       "# HELP incus_memory_Active_file_bytes The amount of file-backed memory on active LRU list.",
	MemoryActiveBytes:           "# HELP incus_memory_Active_bytes The amount of memory on active LRU list.",
	MemoryCachedBytes:           "# HELP incus_memory_Cached_bytes The amount of cached memory.",
	MemoryDirtyBytes:            "# HELP incus_memory_Dirty_bytes The amount of memory waiting to get written back to the disk.",
	MemoryHugePagesFreeBytes:    "# HELP incus_memory_HugepagesFree_bytes The amount of free memory for hugetlb.",
	MemoryHugePagesTotalBytes:   "# HELP incus_memory_HugepagesTotal_bytes The amount of used memory for hugetlb.",
	MemoryInactiveAnonBytes:     "# HELP incus_memory_Inactive_anon_bytes The amount of anonymous memory on inactive LRU list.",
	MemoryInactiveFileBytes:     "# HELP incus_memory_Inactive_file_bytes The amount of file-backed memory on inactive LRU list.",
	MemoryInactiveBytes:         "# HELP incus_memory_Inactive_bytes The amount of memory on inactive LRU list.",
	MemoryMappedBytes:           "# HELP incus_memory_Mapped_bytes The amount of mapped memory.",
	MemoryMemAvailableBytes:     "# HELP incus_memory_MemAvailable_bytes The amount of available memory.",
	MemoryMemFreeBytes:          "# HELP incus_memory_MemFree_bytes The amount of free memory.",
	MemoryMemTotalBytes:         "# HELP incus_memory_MemTotal_bytes The amount of used memory.",
	MemoryRSSBytes:              "# HELP incus_memory_RSS_bytes The amount of anonymous and swap cache memory.",
	MemoryShmemBytes:            "# HELP incus_memory_Shmem_bytes The amount of cached filesystem data that is swap-backed.",
	MemorySwapBytes:             "# HELP incus_memory_Swap_bytes The amount of used swap memory.",
	MemoryUnevictableBytes:      "# HELP incus_memory_Unevictable_bytes The amount of unevictable memory.",
	MemoryWritebackBytes:        "# HELP incus_memory_Writeback_bytes The amount of memory queued for syncing to disk.",
	MemoryOOMKillsTotal:         "# HELP incus_memory_OOM_kills_total The number of out of memory kills.",
	NetworkReceiveBytesTotal:    "# HELP incus_network_receive_bytes_total The amount of received bytes on a given interface.",
	NetworkReceiveDropTotal:     "# HELP incus_network_receive_drop_total The amount of received dropped bytes on a given interface.",
	NetworkReceiveErrsTotal:     "# HELP incus_network_receive_errs_total The amount of received errors on a given interface.",
	NetworkReceivePacketsTotal:  "# HELP incus_network_receive_packets_total The amount of received packets on a given interface.",
	NetworkTransmitBytesTotal:   "# HELP incus_network_transmit_bytes_total The amount of transmitted bytes on a given interface.",
	NetworkTransmitDropTotal:    "# HELP incus_network_transmit_drop_total The amount of transmitted dropped bytes on a given interface.",
	NetworkTransmitErrsTotal:    "# HELP incus_network_transmit_errs_total The amount of transmitted errors on a given interface.",
	NetworkTransmitPacketsTotal: "# HELP incus_network_transmit_packets_total The amount of transmitted packets on a given interface.",
	OperationsTotal:             "# HELP incus_operations_total The number of running operations",
	ProcsTotal:                  "# HELP incus_procs_total The number of running processes.",
	UptimeSeconds:               "# HELP incus_uptime_seconds The daemon uptime in seconds.",
	WarningsTotal:               "# HELP incus_warnings_total The number of active warnings.",
}

MetricHeaders represents the metric headers which contain help messages as specified by OpenMetrics.

View Source
var MetricNames = map[MetricType]string{
	CPUSecondsTotal:             "incus_cpu_seconds_total",
	CPUs:                        "incus_cpu_effective_total",
	DiskReadBytesTotal:          "incus_disk_read_bytes_total",
	DiskReadsCompletedTotal:     "incus_disk_reads_completed_total",
	DiskWrittenBytesTotal:       "incus_disk_written_bytes_total",
	DiskWritesCompletedTotal:    "incus_disk_writes_completed_total",
	FilesystemAvailBytes:        "incus_filesystem_avail_bytes",
	FilesystemFreeBytes:         "incus_filesystem_free_bytes",
	FilesystemSizeBytes:         "incus_filesystem_size_bytes",
	GoAllocBytes:                "incus_go_alloc_bytes",
	GoAllocBytesTotal:           "incus_go_alloc_bytes_total",
	GoBuckHashSysBytes:          "incus_go_buck_hash_sys_bytes",
	GoFreesTotal:                "incus_go_frees_total",
	GoGCSysBytes:                "incus_go_gc_sys_bytes",
	GoGoroutines:                "incus_go_goroutines",
	GoHeapAllocBytes:            "incus_go_heap_alloc_bytes",
	GoHeapIdleBytes:             "incus_go_heap_idle_bytes",
	GoHeapInuseBytes:            "incus_go_heap_inuse_bytes",
	GoHeapObjects:               "incus_go_heap_objects",
	GoHeapReleasedBytes:         "incus_go_heap_released_bytes",
	GoHeapSysBytes:              "incus_go_heap_sys_bytes",
	GoLookupsTotal:              "incus_go_lookups_total",
	GoMallocsTotal:              "incus_go_mallocs_total",
	GoMCacheInuseBytes:          "incus_go_mcache_inuse_bytes",
	GoMCacheSysBytes:            "incus_go_mcache_sys_bytes",
	GoMSpanInuseBytes:           "incus_go_mspan_inuse_bytes",
	GoMSpanSysBytes:             "incus_go_mspan_sys_bytes",
	GoNextGCBytes:               "incus_go_next_gc_bytes",
	GoOtherSysBytes:             "incus_go_other_sys_bytes",
	GoStackInuseBytes:           "incus_go_stack_inuse_bytes",
	GoStackSysBytes:             "incus_go_stack_sys_bytes",
	GoSysBytes:                  "incus_go_sys_bytes",
	MemoryActiveAnonBytes:       "incus_memory_Active_anon_bytes",
	MemoryActiveFileBytes:       "incus_memory_Active_file_bytes",
	MemoryActiveBytes:           "incus_memory_Active_bytes",
	MemoryCachedBytes:           "incus_memory_Cached_bytes",
	MemoryDirtyBytes:            "incus_memory_Dirty_bytes",
	MemoryHugePagesFreeBytes:    "incus_memory_HugepagesFree_bytes",
	MemoryHugePagesTotalBytes:   "incus_memory_HugepagesTotal_bytes",
	MemoryInactiveAnonBytes:     "incus_memory_Inactive_anon_bytes",
	MemoryInactiveFileBytes:     "incus_memory_Inactive_file_bytes",
	MemoryInactiveBytes:         "incus_memory_Inactive_bytes",
	MemoryMappedBytes:           "incus_memory_Mapped_bytes",
	MemoryMemAvailableBytes:     "incus_memory_MemAvailable_bytes",
	MemoryMemFreeBytes:          "incus_memory_MemFree_bytes",
	MemoryMemTotalBytes:         "incus_memory_MemTotal_bytes",
	MemoryRSSBytes:              "incus_memory_RSS_bytes",
	MemoryShmemBytes:            "incus_memory_Shmem_bytes",
	MemorySwapBytes:             "incus_memory_Swap_bytes",
	MemoryUnevictableBytes:      "incus_memory_Unevictable_bytes",
	MemoryWritebackBytes:        "incus_memory_Writeback_bytes",
	MemoryOOMKillsTotal:         "incus_memory_OOM_kills_total",
	NetworkReceiveBytesTotal:    "incus_network_receive_bytes_total",
	NetworkReceiveDropTotal:     "incus_network_receive_drop_total",
	NetworkReceiveErrsTotal:     "incus_network_receive_errs_total",
	NetworkReceivePacketsTotal:  "incus_network_receive_packets_total",
	NetworkTransmitBytesTotal:   "incus_network_transmit_bytes_total",
	NetworkTransmitDropTotal:    "incus_network_transmit_drop_total",
	NetworkTransmitErrsTotal:    "incus_network_transmit_errs_total",
	NetworkTransmitPacketsTotal: "incus_network_transmit_packets_total",
	OperationsTotal:             "incus_operations_total",
	ProcsTotal:                  "incus_procs_total",
	UptimeSeconds:               "incus_uptime_seconds",
	WarningsTotal:               "incus_warnings_total",
}

MetricNames associates a metric type to its name.

Functions

This section is empty.

Types

type CPUMetrics

type CPUMetrics struct {
	CPU            string  `json:"cpu" yaml:"cpu"`
	SecondsUser    float64 `json:"cpu_seconds_user" yaml:"cpu_seconds_user"`
	SecondsNice    float64 `json:"cpu_seconds_nice" yaml:"cpu_seconds_nice"`
	SecondsSystem  float64 `json:"cpu_seconds_system" yaml:"cpu_seconds_system"`
	SecondsIdle    float64 `json:"cpu_seconds_idle" yaml:"cpu_seconds_idle"`
	SecondsIOWait  float64 `json:"cpu_seconds_iowait" yaml:"cpu_seconds_iowait"`
	SecondsIRQ     float64 `json:"cpu_seconds_irq" yaml:"cpu_seconds_irq"`
	SecondsSoftIRQ float64 `json:"cpu_seconds_softirq" yaml:"cpu_seconds_softirq"`
	SecondsSteal   float64 `json:"cpu_seconds_steal" yaml:"cpu_seconds_steal"`
}

CPUMetrics represents CPU metrics for an instance.

type DiskMetrics

type DiskMetrics struct {
	Device          string `json:"device" yaml:"device"`
	ReadBytes       uint64 `json:"disk_read_bytes" yaml:"disk_read_bytes"`
	ReadsCompleted  uint64 `json:"disk_reads_completed" yaml:"disk_reads_completes"`
	WrittenBytes    uint64 `json:"disk_written_bytes" yaml:"disk_written_bytes"`
	WritesCompleted uint64 `json:"disk_writes_completed" yaml:"disk_writes_completed"`
}

DiskMetrics represents disk metrics for an instance.

type FilesystemMetrics

type FilesystemMetrics struct {
	Device         string `json:"device" yaml:"device"`
	Mountpoint     string `json:"mountpoint" yaml:"mountpoint"`
	FSType         string `json:"fstype" yaml:"fstype"`
	AvailableBytes uint64 `json:"filesystem_avail_bytes" yaml:"filesystem_avail_bytes"`
	FreeBytes      uint64 `json:"filesystem_free_bytes" yaml:"filesystem_free_bytes"`
	SizeBytes      uint64 `json:"filesystem_size_bytes" yaml:"filesystem_size_bytes"`
}

FilesystemMetrics represents filesystem metrics for an instance.

type MemoryMetrics

type MemoryMetrics struct {
	ActiveAnonBytes     uint64 `json:"memory_active_anon_bytes" yaml:"memory_active_anon_bytes"`
	ActiveFileBytes     uint64 `json:"memory_active_file_bytes" yaml:"memory_active_file_bytes"`
	ActiveBytes         uint64 `json:"memory_active_bytes" yaml:"memory_active_bytes"`
	CachedBytes         uint64 `json:"memory_cached_bytes" yaml:"memory_cached_bytes"`
	DirtyBytes          uint64 `json:"memory_dirty_bytes" yaml:"memory_dirty_bytes"`
	HugepagesFreeBytes  uint64 `json:"memory_hugepages_free_bytes" yaml:"memory_hugepages_Free_bytes"`
	HugepagesTotalBytes uint64 `json:"memory_hugepages_total_bytes" yaml:"memory_hugepages_total_bytes"`
	InactiveAnonBytes   uint64 `json:"memory_inactive_anon_bytes" yaml:"memory_inactive_anon_bytes"`
	InactiveFileBytes   uint64 `json:"memory_inactive_file_bytes" yaml:"memory_inactive_file_bytes"`
	InactiveBytes       uint64 `json:"memory_inactive_bytes" yaml:"memory_inactive_bytes"`
	MappedBytes         uint64 `json:"memory_mapped_bytes" yaml:"memory_mapped_bytes"`
	MemAvailableBytes   uint64 `json:"memory_mem_available_bytes" yaml:"memory_mem_available_bytes"`
	MemFreeBytes        uint64 `json:"memory_mem_free_bytes" yaml:"memory_mem_Free_bytes"`
	MemTotalBytes       uint64 `json:"memory_mem_total_bytes" yaml:"memory_mem_total_bytes"`
	RSSBytes            uint64 `json:"memory_rss_bytes" yaml:"memory_rss_bytes"`
	ShmemBytes          uint64 `json:"memory_shmem_bytes" yaml:"memory_shmem_bytes"`
	SwapBytes           uint64 `json:"memory_swap_bytes" yaml:"memory_swap_bytes"`
	UnevictableBytes    uint64 `json:"memory_unevictable_bytes" yaml:"memory_unevictable_bytes"`
	WritebackBytes      uint64 `json:"memory_writeback_bytes" yaml:"memory_writeback_bytes"`
	OOMKills            uint64 `json:"memory_oom_kills" yaml:"memory_oom_kills"`
}

MemoryMetrics represents memory metrics for an instance.

type MetricSet

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

MetricSet represents a set of metrics.

func MetricSetFromAPI

func MetricSetFromAPI(metrics *Metrics, labels map[string]string) (*MetricSet, error)

MetricSetFromAPI converts api.Metrics to a MetricSet, and returns it.

func NewMetricSet

func NewMetricSet(labels map[string]string) *MetricSet

NewMetricSet returns a new MetricSet.

func (*MetricSet) AddSamples

func (m *MetricSet) AddSamples(metricType MetricType, samples ...Sample)

AddSamples adds samples of the type metricType to the MetricSet.

func (*MetricSet) FilterSamples added in v0.2.0

func (m *MetricSet) FilterSamples(permissionChecker func(object auth.Object) bool)

FilterSamples filters the existing MetricSet using the given permission checker. Samples not containing "project" and "name" labels are skipped.

func (*MetricSet) Merge

func (m *MetricSet) Merge(metricSet *MetricSet)

Merge merges two MetricSets. Missing labels from m's samples are added to all samples in n.

func (*MetricSet) String

func (m *MetricSet) String() string

type MetricType

type MetricType int

MetricType is a numeric code identifying the metric.

const (
	// CPUSecondsTotal represents the total CPU seconds used.
	CPUSecondsTotal MetricType = iota
	// CPUs represents the total number of effective CPUs.
	CPUs
	// DiskReadBytesTotal represents the read bytes for a disk.
	DiskReadBytesTotal
	// DiskReadsCompletedTotal represents the completed for a disk.
	DiskReadsCompletedTotal
	// DiskWrittenBytesTotal represents the written bytes for a disk.
	DiskWrittenBytesTotal
	// DiskWritesCompletedTotal represents the completed writes for a disk.
	DiskWritesCompletedTotal
	// FilesystemAvailBytes represents the available bytes on a filesystem.
	FilesystemAvailBytes
	// FilesystemFreeBytes represents the free bytes on a filesystem.
	FilesystemFreeBytes
	// FilesystemSizeBytes represents the size in bytes of a filesystem.
	FilesystemSizeBytes
	// MemoryActiveAnonBytes represents the amount of anonymous memory on active LRU list.
	MemoryActiveAnonBytes
	// MemoryActiveFileBytes represents the amount of file-backed memory on active LRU list.
	MemoryActiveFileBytes
	// MemoryActiveBytes represents the amount of memory on active LRU list.
	MemoryActiveBytes
	// MemoryCachedBytes represents the amount of cached memory.
	MemoryCachedBytes
	// MemoryDirtyBytes represents the amount of memory waiting to get written back to the disk.
	MemoryDirtyBytes
	// MemoryHugePagesFreeBytes represents the amount of free memory for hugetlb.
	MemoryHugePagesFreeBytes
	// MemoryHugePagesTotalBytes represents the amount of used memory for hugetlb.
	MemoryHugePagesTotalBytes
	// MemoryInactiveAnonBytes represents the amount of anonymous memory on inactive LRU list.
	MemoryInactiveAnonBytes
	// MemoryInactiveFileBytes represents the amount of file-backed memory on inactive LRU list.
	MemoryInactiveFileBytes
	// MemoryInactiveBytes represents the amount of memory on inactive LRU list.
	MemoryInactiveBytes
	// MemoryMappedBytes represents the amount of mapped memory.
	MemoryMappedBytes
	//MemoryMemAvailableBytes represents the amount of available memory.
	MemoryMemAvailableBytes
	// MemoryMemFreeBytes represents the amount of free memory.
	MemoryMemFreeBytes
	// MemoryMemTotalBytes represents the amount of used memory.
	MemoryMemTotalBytes
	// MemoryRSSBytes represents the amount of anonymous and swap cache memory.
	MemoryRSSBytes
	// MemoryShmemBytes represents the amount of cached filesystem data that is swap-backed.
	MemoryShmemBytes
	// MemorySwapBytes represents the amount of swap memory.
	MemorySwapBytes
	// MemoryUnevictableBytes represents the amount of unevictable memory.
	MemoryUnevictableBytes
	// MemoryWritebackBytes represents the amount of memory queued for syncing to disk.
	MemoryWritebackBytes
	// MemoryOOMKillsTotal represents the amount of oom kills.
	MemoryOOMKillsTotal
	// NetworkReceiveBytesTotal represents the amount of received bytes on a given interface.
	NetworkReceiveBytesTotal
	// NetworkReceiveDropTotal represents the amount of received dropped bytes on a given interface.
	NetworkReceiveDropTotal
	// NetworkReceiveErrsTotal represents the amount of received errors on a given interface.
	NetworkReceiveErrsTotal
	// NetworkReceivePacketsTotal represents the amount of received packets on a given interface.
	NetworkReceivePacketsTotal
	// NetworkTransmitBytesTotal represents the amount of transmitted bytes on a given interface.
	NetworkTransmitBytesTotal
	// NetworkTransmitDropTotal represents the amount of transmitted dropped bytes on a given interface.
	NetworkTransmitDropTotal
	// NetworkTransmitErrsTotal represents the amount of transmitted errors on a given interface.
	NetworkTransmitErrsTotal
	// NetworkTransmitPacketsTotal represents the amount of transmitted packets on a given interface.
	NetworkTransmitPacketsTotal
	// ProcsTotal represents the number of running processes.
	ProcsTotal
	// OperationsTotal represents the number of running operations.
	OperationsTotal
	// WarningsTotal represents the number of active warnings.
	WarningsTotal
	// UptimeSeconds represents the daemon uptime in seconds.
	UptimeSeconds
	// GoGoroutines represents the number of goroutines that currently exist..
	GoGoroutines
	// GoAllocBytes represents the number of bytes allocated and still in use.
	GoAllocBytes
	// GoAllocBytesTotal represents the total number of bytes allocated, even if freed.
	GoAllocBytesTotal
	// GoSysBytes represents the number of bytes obtained from system.
	GoSysBytes
	// GoLookupsTotal represents the total number of pointer lookups.
	GoLookupsTotal
	// GoMallocsTotal represents the total number of mallocs.
	GoMallocsTotal
	// GoFreesTotal represents the total number of frees.
	GoFreesTotal
	// GoHeapAllocBytes represents the number of heap bytes allocated and still in use.
	GoHeapAllocBytes
	// GoHeapSysBytes represents the number of heap bytes obtained from system.
	GoHeapSysBytes
	// GoHeapIdleBytes represents the number of heap bytes waiting to be used.
	GoHeapIdleBytes
	// GoHeapInuseBytes represents the number of heap bytes that are in use.
	GoHeapInuseBytes
	// GoHeapReleasedBytes represents the number of heap bytes released to OS.
	GoHeapReleasedBytes
	// GoHeapObjects represents the number of allocated objects.
	GoHeapObjects
	// GoStackInuseBytes represents the number of bytes in use by the stack allocator.
	GoStackInuseBytes
	// GoStackSysBytes represents the number of bytes obtained from system for stack allocator.
	GoStackSysBytes
	// GoMSpanInuseBytes represents the number of bytes in use by mspan structures.
	GoMSpanInuseBytes
	// GoMSpanSysBytes represents the number of bytes used for mspan structures obtained from system.
	GoMSpanSysBytes
	// GoMCacheInuseBytes represents the number of bytes in use by mcache structures.
	GoMCacheInuseBytes
	// GoMCacheSysBytes represents the number of bytes used for mcache structures obtained from system.
	GoMCacheSysBytes
	// GoBuckHashSysBytes represents the number of bytes used by the profiling bucket hash table.
	GoBuckHashSysBytes
	// GoGCSysBytes represents the number of bytes used for garbage collection system metadata.
	GoGCSysBytes
	// GoOtherSysBytes represents the number of bytes used for other system allocations.
	GoOtherSysBytes
	// GoNextGCBytes represents the number of heap bytes when next garbage collection will take place.
	GoNextGCBytes
)

type Metrics

type Metrics struct {
	CPU            []CPUMetrics        `json:"cpu_seconds_total" yaml:"cpu_seconds_total"`
	CPUs           int                 `json:"cpus" yaml:"cpus"`
	Disk           []DiskMetrics       `json:"disk" yaml:"disk"`
	Filesystem     []FilesystemMetrics `json:"filesystem" yaml:"filesystem"`
	Memory         MemoryMetrics       `json:"memory" yaml:"memory"`
	Network        []NetworkMetrics    `json:"network" yaml:"network"`
	ProcessesTotal uint64              `json:"procs_total" yaml:"procs_total"`
}

Metrics represents instance metrics.

type NetworkMetrics

type NetworkMetrics struct {
	Device          string `json:"device" yaml:"device"`
	ReceiveBytes    uint64 `json:"network_receive_bytes" yaml:"network_receive_bytes"`
	ReceiveDrop     uint64 `json:"network_receive_drop" yaml:"network_receive_drop"`
	ReceiveErrors   uint64 `json:"network_receive_errs" yaml:"network_receive_errs"`
	ReceivePackets  uint64 `json:"network_receive_packets" yaml:"network_receive_packets"`
	TransmitBytes   uint64 `json:"network_transmit_bytes" yaml:"network_transmit_bytes"`
	TransmitDrop    uint64 `json:"network_transmit_drop" yaml:"network_transmit_drop"`
	TransmitErrors  uint64 `json:"network_transmit_errs" yaml:"network_transmit_errs"`
	TransmitPackets uint64 `json:"network_transmit_packets" yaml:"network_transmit_packets"`
}

NetworkMetrics represents network metrics for an instance.

type Sample

type Sample struct {
	Labels map[string]string
	Value  float64
}

A Sample represents an OpenMetrics sample containing labels and the value.

Jump to

Keyboard shortcuts

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