Documentation ¶
Index ¶
- func CamelToSnake(str string) string
- func CompareYAML(a, b interface{}) bool
- func CompareYAMLWithHook(a, b interface{}, ...) bool
- func DefaultConfigFromFlags(cfg interface{}) interface{}
- func EnableOtelFeatureGates(fgNames ...string) error
- func Eventually(t require.TestingT, check func(t require.TestingT))
- func EventuallyWithBackoff(t require.TestingT, check func(t require.TestingT), bc backoff.Config)
- func ExtractDirPath(p string) (string, error)
- func JoinWithTruncation(elements []string, sep string, maxElements int, abbreviation string) string
- func MarshalYAMLMerged(vv ...interface{}) ([]byte, error)
- func MustRegisterOrGet(reg prometheus.Registerer, c prometheus.Collector) prometheus.Collector
- func SetupOtelFeatureGates() error
- func TestAlloyLogger(t require.TestingT) *logging.Logger
- func TestLogger(t testing.TB) log.Logger
- func UnmarshalYAMLMerged(bb []byte, vv ...interface{}) error
- func Untab(s string) string
- func Untar(tarPath string, destPath string) error
- type ConfigFlags
- type PrefixedConfigFlags
- type RawYAML
- type UncheckedCollector
- type Unregisterer
- type WaitTrigger
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
func CamelToSnake ¶
CamelToSnake is a helper function for converting CamelCase to Snake Case
func CompareYAML ¶
func CompareYAML(a, b interface{}) bool
CompareYAML marshals a and b to YAML and ensures that their contents are equal. If either Marshal fails, CompareYAML returns false.
func CompareYAMLWithHook ¶
func CompareYAMLWithHook(a, b interface{}, hook func(in interface{}) (ok bool, out interface{}, err error)) bool
CompareYAMLWithHook marshals both a and b to YAML and checks the results for equality, allowing for a hook to define custom marshaling behavior. If either Marshal fails, CompareYAMLWithHook returns false.
func DefaultConfigFromFlags ¶
func DefaultConfigFromFlags(cfg interface{}) interface{}
DefaultConfigFromFlags will load default values into cfg by retrieving default values that are registered as flags.
cfg must implement either PrefixedConfigFlags or ConfigFlags.
func EnableOtelFeatureGates ¶
Enables a set of feature gates in Otel's Global Feature Gate Registry.
func Eventually ¶
Eventually calls the check function several times until it doesn't report an error. Failing the test in the t provided to check does not fail the test until the provided backoff.Config is out of retries.
func EventuallyWithBackoff ¶
func ExtractDirPath ¶ added in v1.5.0
ExtractDirPath removes the file part of a path if it exists.
func JoinWithTruncation ¶ added in v1.2.1
JoinWithTruncation joins a slice of string elements with a separator sep, truncating the middle if the slice is longer than maxElements, using abbreviation as a placeholder for the truncated part. The last element of the slice is always included in the result. For example: ["1", "2", "3", "4"] with sep=",", maxLength=3 and abbreviation="..." will return "1, 2, ..., 4".
func MarshalYAMLMerged ¶
MarshalYAMLMerged marshals all values from vv into a single object.
func MustRegisterOrGet ¶
func MustRegisterOrGet(reg prometheus.Registerer, c prometheus.Collector) prometheus.Collector
MustRegisterOrGet will attempt to register the supplied collector into the register. If it's already registered, it will return that one. In case that the register procedure fails with something other than already registered, this will panic.
func SetupOtelFeatureGates ¶
func SetupOtelFeatureGates() error
Enables a set of feature gates which should always be enabled in Alloy.
func TestAlloyLogger ¶
TestAlloyLogger generates an Alloy-compatible logger for a test.
func TestLogger ¶
TestLogger generates a logger for a test.
func UnmarshalYAMLMerged ¶
UnmarshalYAMLMerged performs a strict unmarshal of bb into all values from vv.
Types ¶
type ConfigFlags ¶
ConfigFlags is an interface that will register flags that can control some object.
type PrefixedConfigFlags ¶
PrefixedConfigFlags is an interface that, given a prefix for flags and a flagset, will register flags that can control some object.
type RawYAML ¶
type RawYAML []byte
RawYAML is similar to json.RawMessage and allows for deferred YAML decoding.
func (RawYAML) MarshalYAML ¶
MarshalYAML implements yaml.Marshaler.
func (*RawYAML) UnmarshalYAML ¶
UnmarshalYAML implements yaml.Unmarshaler.
type UncheckedCollector ¶
type UncheckedCollector struct {
// contains filtered or unexported fields
}
UncheckedCollector is a prometheus.Collector which stores a set of unchecked metrics.
func NewUncheckedCollector ¶
func NewUncheckedCollector(inner prometheus.Collector) *UncheckedCollector
NewUncheckedCollector creates a new UncheckedCollector. If inner is nil, UncheckedCollector returns no metrics.
func (*UncheckedCollector) Collect ¶
func (uc *UncheckedCollector) Collect(ch chan<- prometheus.Metric)
Collector implements prometheus.Collector. If the UncheckedCollector has a non-nil inner collector, metrics will be collected from it.
func (*UncheckedCollector) Describe ¶
func (uc *UncheckedCollector) Describe(_ chan<- *prometheus.Desc)
Describe implements prometheus.Collector, but is a no-op to be considered an "unchecked" collector by Prometheus. See prometheus.Collector for more information.
func (*UncheckedCollector) SetCollector ¶
func (uc *UncheckedCollector) SetCollector(inner prometheus.Collector)
SetCollector replaces the inner collector.
type Unregisterer ¶ added in v1.2.0
type Unregisterer interface { prometheus.Registerer UnregisterAll() bool }
Unregisterer is a Prometheus Registerer that can unregister all collectors passed to it.
func WrapWithUnregisterer ¶ added in v1.2.0
func WrapWithUnregisterer(reg prometheus.Registerer) Unregisterer
WrapWithUnregisterer wraps a prometheus Registerer with capabilities to unregister all collectors.
type WaitTrigger ¶
type WaitTrigger struct {
// contains filtered or unexported fields
}
WaitTrigger allows for waiting for a specific condition to be met. Useful for tests.
func (*WaitTrigger) Trigger ¶
func (wt *WaitTrigger) Trigger()
Trigger completes the trigger and alerts all waiting. Calling Trigger again after the first invocation is a no-op.
func (*WaitTrigger) Wait ¶
func (wt *WaitTrigger) Wait(timeout time.Duration) error
Wait waits for trigger to complete up to the specified timeout. Returns an error if the timeout expires.
func (*WaitTrigger) WaitContext ¶
func (wt *WaitTrigger) WaitContext(ctx context.Context) error
WaitContext waits for trigger to complete or for the context to cancel. Returns an error if ctx gets canceled.
Source Files ¶
Directories ¶
Path | Synopsis |
---|---|
Package assertmetrics provides utilities for verifying Prometheus metrics in tests given a Registry.
|
Package assertmetrics provides utilities for verifying Prometheus metrics in tests given a Registry. |
Package testappender exposes utilities to test code which writes to Prometheus storage.Appenders.
|
Package testappender exposes utilities to test code which writes to Prometheus storage.Appenders. |
Package zapadapter allows github.com/go-kit/log to be used as a Zap core.
|
Package zapadapter allows github.com/go-kit/log to be used as a Zap core. |