exporter

package
v0.0.0-...-2fbeebe Latest Latest
Warning

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

Go to latest
Published: May 15, 2024 License: Apache-2.0 Imports: 14 Imported by: 0

Documentation

Index

Constants

View Source
const (
	MetricStreamingMultiProcessorActive       = MetricName("DCGM_FI_PROF_SM_ACTIVE")
	MetricStreamingMultiProcessorOccupancy    = MetricName("DCGM_FI_PROF_SM_OCCUPANCY")
	MetricStreamingMultiProcessorTensorActive = MetricName("DCGM_FI_PROF_PIPE_TENSOR_ACTIVE")
	MetricDRAMActive                          = MetricName("DCGM_FI_PROF_DRAM_ACTIVE")
	MetricPCIeTXBytes                         = MetricName("DCGM_FI_PROF_PCIE_TX_BYTES")
	MetricPCIeRXBytes                         = MetricName("DCGM_FI_PROF_PCIE_RX_BYTES")
	MetricGraphicsEngineActive                = MetricName("DCGM_FI_PROF_GR_ENGINE_ACTIVE")
	MetricFrameBufferTotal                    = MetricName("DCGM_FI_DEV_FB_TOTAL")
	MetricFrameBufferFree                     = MetricName("DCGM_FI_DEV_FB_FREE")
	MetricFrameBufferUsed                     = MetricName("DCGM_FI_DEV_FB_USED")
	MetricPCIeLinkGen                         = MetricName("DCGM_FI_DEV_PCIE_LINK_GEN")
	MetricPCIeLinkWidth                       = MetricName("DCGM_FI_DEV_PCIE_LINK_WIDTH")
	MetricGPUTemperature                      = MetricName("DCGM_FI_DEV_GPU_TEMP")
	MetricMemoryTemperature                   = MetricName("DCGM_FI_DEV_MEMORY_TEMP")
	MetricPowerUsage                          = MetricName("DCGM_FI_DEV_POWER_USAGE")
)

Variables

Functions

This section is empty.

Types

type Config

type Config struct {
	ExportInterval   time.Duration
	DCGMExporterPort int
	DCGMExporterPath string
	DCGMExporterHost string
	Selector         string
	Enabled          bool
}

type Exporter

type Exporter interface {
	Start(ctx context.Context) error
	Enable()
	Disable()
	Enabled() bool
}

func NewExporter

func NewExporter(
	cfg Config,
	kube kubernetes.Interface,
	log logrus.FieldLogger,
	scraper Scraper,
	mapper MetricMapper,
	castaiClient castai.Client,
) Exporter

type HTTPClient

type HTTPClient interface {
	Do(req *http.Request) (*http.Response, error)
}

type MetricFamilyMap

type MetricFamilyMap map[string]*dto.MetricFamily

type MetricMapper

type MetricMapper interface {
	Map(metrics []MetricFamilyMap) *pb.MetricsBatch
}

func NewMapper

func NewMapper() MetricMapper

type MetricName

type MetricName = string

type Scraper

type Scraper interface {
	Scrape(ctx context.Context, urls []string) ([]MetricFamilyMap, error)
}

func NewScraper

func NewScraper(httpClient HTTPClient, log logrus.FieldLogger) Scraper

Jump to

Keyboard shortcuts

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