utils

package
v0.0.0-...-22d9994 Latest Latest
Warning

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

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

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

func ConfigureGrpcKlog

func ConfigureGrpcKlog()

ConfigureGrpcKlog wraps grpc logging to use klog

func DelayedDumper

func DelayedDumper(obj interface{}) fmt.Stringer

DelayedDumper delays the dumping of an object. Useful in logging to delay the processing (JSON marshalling) until (or if) the object is actually evaluated.

func Dump

func Dump(obj interface{}) string

Dump dumps an object into YAML textual format

func GetKubernetesNamespace

func GetKubernetesNamespace() string

GetKubernetesNamespace returns the kubernetes namespace we're running under, or an empty string if the namespace cannot be determined.

func NodeName

func NodeName() string

NodeName returns the name of the k8s node we're running on.

Types

type DurationVal

type DurationVal struct {
	time.Duration
}

DurationVal is a wrapper for handling time.Duration as a command line flag

func (*DurationVal) Set

func (d *DurationVal) Set(val string) error

Set implements the flag.Value interface

func (*DurationVal) UnmarshalJSON

func (d *DurationVal) UnmarshalJSON(data []byte) error

UnmarshalJSON implements the Unmarshaler interface from "encoding/json"

type FsWatcher

type FsWatcher struct {
	*fsnotify.Watcher

	Events chan struct{}
	// contains filtered or unexported fields
}

FsWatcher is a wrapper helper for watching files

func CreateFsWatcher

func CreateFsWatcher(ratelimit time.Duration, names ...string) (*FsWatcher, error)

CreateFsWatcher creates a new FsWatcher

type KlogFlagVal

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

KlogFlagVal is a wrapper to allow dynamic control of klog from the config file

func NewKlogFlagVal

func NewKlogFlagVal(f *flag.Flag) *KlogFlagVal

NewKlogFlagVal wraps a klog flag into KlogFlagVal type

func (*KlogFlagVal) DefValue

func (k *KlogFlagVal) DefValue() string

DefValue returns the default value of KlogFlagVal as string

func (*KlogFlagVal) IsBoolFlag

func (k *KlogFlagVal) IsBoolFlag() bool

IsBoolFlag implements flag.boolFlag.IsBoolFlag() for wrapped klog flags.

func (*KlogFlagVal) IsSetFromCmdline

func (k *KlogFlagVal) IsSetFromCmdline() bool

IsSetFromCmdline returns true if the value has been set via Set()

func (*KlogFlagVal) Set

func (k *KlogFlagVal) Set(value string) error

Set implements flag.Value interface

func (*KlogFlagVal) SetFromConfig

func (k *KlogFlagVal) SetFromConfig(value string) error

SetFromConfig sets the value without marking it as set from the cmdline

func (*KlogFlagVal) String

func (k *KlogFlagVal) String() string

String implements flag.Value interface

type MemoryResourceInfo

type MemoryResourceInfo map[corev1.ResourceName]int64

MemoryResourceInfo holds information of memory resources per resource type.

type MetricsServer

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

func CreateMetricsServer

func CreateMetricsServer(port int, cs ...prometheus.Collector) *MetricsServer

RunMetricsServer starts a new http server to expose metrics.

func (*MetricsServer) Run

func (s *MetricsServer) Run()

Run runs the metrics server.

func (*MetricsServer) Stop

func (s *MetricsServer) Stop()

Stop stops the metrics server.

type NumaMemoryResources

type NumaMemoryResources map[int]MemoryResourceInfo

NumaMemoryResources contains information of the memory resources per NUMA nodes of the system.

func GetNumaMemoryResources

func GetNumaMemoryResources() (NumaMemoryResources, error)

GetNumaMemoryResources returns total amount of memory and hugepages under NUMA nodes

type RegexpVal

type RegexpVal struct {
	regexp.Regexp
}

RegexpVal is a wrapper for regexp command line flags

func (*RegexpVal) Set

func (a *RegexpVal) Set(val string) error

Set implements the flag.Value interface

func (*RegexpVal) UnmarshalJSON

func (a *RegexpVal) UnmarshalJSON(data []byte) error

UnmarshalJSON implements the Unmarshaler interface from "encoding/json"

type StringSetVal

type StringSetVal map[string]struct{}

StringSetVal is a Value encapsulating a set of comma-separated strings

func (*StringSetVal) Set

func (a *StringSetVal) Set(val string) error

Set implements the flag.Value interface

func (*StringSetVal) String

func (a *StringSetVal) String() string

String implements the flag.Value interface

func (*StringSetVal) UnmarshalJSON

func (a *StringSetVal) UnmarshalJSON(data []byte) error

UnmarshalJSON implements the Unmarshaler interface from "encoding/json"

type StringSliceVal

type StringSliceVal []string

StringSliceVal is a Value encapsulating a slice of comma-separated strings

func (*StringSliceVal) Set

func (a *StringSliceVal) Set(val string) error

Set implements the regexp.Value interface

func (*StringSliceVal) String

func (a *StringSliceVal) String() string

String implements the regexp.Value interface

type TlsConfig

type TlsConfig struct {
	sync.Mutex
	// contains filtered or unexported fields
}

TlsConfig is a TLS config wrapper/helper for cert rotation

func (*TlsConfig) GetConfig

func (c *TlsConfig) GetConfig(*tls.ClientHelloInfo) (*tls.Config, error)

GetConfig returns the current TLS configuration. Intended to be used as the GetConfigForClient callback in tls.Config.

func (*TlsConfig) UpdateConfig

func (c *TlsConfig) UpdateConfig(certFile, keyFile, caFile string) error

UpdateConfig updates the wrapped TLS config

Directories

Path Synopsis

Jump to

Keyboard shortcuts

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