package registry

import "github.com/elastic/go-sysinfo/internal/registry"

Index

Functions

func Register

func Register(provider interface{})

Register a metrics provider. `provider` should implement one or more of `ProcessProvider` or `HostProvider`

Types

type HostOptsCreator

type HostOptsCreator = func(ProviderOptions) HostProvider

type HostProvider

type HostProvider interface {
	Host() (types.Host, error)
}

HostProvider defines interfaces that provide host-specific metrics

func GetHostProvider

func GetHostProvider(opts ProviderOptions) HostProvider

GetHostProvider returns the HostProvider registered for the system. May return nil.

type ProcessOptsCreator

type ProcessOptsCreator = func(ProviderOptions) ProcessProvider

type ProcessProvider

type ProcessProvider interface {
	Processes() ([]types.Process, error)
	Process(pid int) (types.Process, error)
	Self() (types.Process, error)
}

ProcessProvider defines interfaces that provide process-specific metrics

func GetProcessProvider

func GetProcessProvider(opts ProviderOptions) ProcessProvider

GetProcessProvider returns the ProcessProvider registered on the system. May return nil.

type ProviderOptions

type ProviderOptions struct {
	Hostfs string
}

Source Files

registry.go

Version
v1.15.2
Published
Mar 25, 2025
Platform
linux/amd64
Imports
2 packages
Last checked
7 hours ago

Tools for package owners.