instrument

package
v1.1.0 Latest Latest
Warning

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

Go to latest
Published: Nov 17, 2025 License: BSD-3-Clause Imports: 30 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

func NewInstrumentedEventHandler

func NewInstrumentedEventHandler[ObjectType client.Object](tracer Instrumenter, inner handler.TypedEventHandler[ObjectType, reconcile.Request]) handler.TypedEventHandler[ObjectType, reconcile.Request]

func NewInstrumenter

func NewInstrumenter(mgr ctrl.Manager) *instrumenterBuilder

func NewLoggerFunc

func NewLoggerFunc(logger logr.Logger) func(ctx context.Context) logr.Logger

func NewSentryLoggerFunc

func NewSentryLoggerFunc(logger logr.Logger) func(ctx context.Context) logr.Logger

func NewSentrySink

func NewSentrySink(ctx context.Context, logSink logr.LogSink) *sentrySink

Types

type InstrumentedBuilder

type InstrumentedBuilder struct {
	*builder.Builder
	Instrumenter
	// contains filtered or unexported fields
}

func InstrumentedControllerManagedBy

func InstrumentedControllerManagedBy(t Instrumenter, m manager.Manager) *InstrumentedBuilder

InstrumentedControllerManagedBy returns a new controller builder that will be started by the provided Manager.

func (*InstrumentedBuilder) Complete

func (*InstrumentedBuilder) For

func (*InstrumentedBuilder) Named

func (blder *InstrumentedBuilder) Named(name string) *InstrumentedBuilder

func (*InstrumentedBuilder) Owns

func (*InstrumentedBuilder) Watches

func (*InstrumentedBuilder) WatchesMetadata

func (*InstrumentedBuilder) WatchesRawSource

func (*InstrumentedBuilder) WithEventFilter

func (blder *InstrumentedBuilder) WithEventFilter(p predicate.Predicate) *InstrumentedBuilder

func (*InstrumentedBuilder) WithLogConstructor

func (blder *InstrumentedBuilder) WithLogConstructor(logConstructor func(*reconcile.Request) logr.Logger) *InstrumentedBuilder

func (*InstrumentedBuilder) WithOptions

type InstrumentedController

type InstrumentedController struct {
	Instrumenter
	// contains filtered or unexported fields
}

func (*InstrumentedController) GetLogger

func (t *InstrumentedController) GetLogger() logr.Logger

func (*InstrumentedController) Reconcile

func (*InstrumentedController) Start

func (*InstrumentedController) Watch

type InstrumentedQueue

type InstrumentedQueue[T comparable] struct {
	// contains filtered or unexported fields
}

func NewInstrumentedQueue

func NewInstrumentedQueue[T comparable](queue workqueue.TypedRateLimitingInterface[*T]) *InstrumentedQueue[T]

func (InstrumentedQueue[T]) Add

func (q InstrumentedQueue[T]) Add(item T)

func (InstrumentedQueue[T]) AddAfter

func (q InstrumentedQueue[T]) AddAfter(item T, duration time.Duration)

func (InstrumentedQueue[T]) AddRateLimited

func (q InstrumentedQueue[T]) AddRateLimited(item T)

func (InstrumentedQueue[T]) AddWithOpts

func (q InstrumentedQueue[T]) AddWithOpts(o priorityqueue.AddOpts, Items ...T)

func (InstrumentedQueue[T]) Done

func (q InstrumentedQueue[T]) Done(item T)

func (InstrumentedQueue[T]) Forget

func (q InstrumentedQueue[T]) Forget(item T)

func (InstrumentedQueue[T]) Get

func (q InstrumentedQueue[T]) Get() (item T, shutdown bool)

func (InstrumentedQueue[T]) GetMetaOf

func (q InstrumentedQueue[T]) GetMetaOf(item T) (*encapsulatedItem[T], bool)

func (InstrumentedQueue[T]) GetWithPriority

func (q InstrumentedQueue[T]) GetWithPriority() (item T, priority int, shutdown bool)

func (InstrumentedQueue[T]) Len

func (q InstrumentedQueue[T]) Len() int

func (InstrumentedQueue[T]) NumRequeues

func (q InstrumentedQueue[T]) NumRequeues(item T) int

func (InstrumentedQueue[T]) ShutDown

func (q InstrumentedQueue[T]) ShutDown()

func (InstrumentedQueue[T]) ShutDownWithDrain

func (q InstrumentedQueue[T]) ShutDownWithDrain()

func (InstrumentedQueue[T]) ShuttingDown

func (q InstrumentedQueue[T]) ShuttingDown() bool

func (InstrumentedQueue[T]) WithContext

func (q InstrumentedQueue[T]) WithContext(ctx *context.Context) *InstrumentedQueue[T]

type InstrumentedReconciler

type InstrumentedReconciler struct {
	Instrumenter
	// contains filtered or unexported fields
}

func (*InstrumentedReconciler) Reconcile

type Instrumenter

type Instrumenter interface {
	InstrumentRequestHandler(handler handler.TypedEventHandler[client.Object, reconcile.Request]) handler.TypedEventHandler[client.Object, reconcile.Request]

	GetContextForRequest(req reconcile.Request) (*context.Context, bool)
	GetContextForEvent(event any) *context.Context

	NewQueue(mgr ctrl.Manager) func(controllerName string, rateLimiter workqueue.TypedRateLimiter[reconcile.Request]) workqueue.TypedRateLimitingInterface[reconcile.Request]
	Cleanup(ctx *context.Context, req reconcile.Request)

	NewLogger(ctx context.Context) logr.Logger

	Tracer
}

type Logger

type Logger interface {
	Enabled() bool
	Error(err error, msg string, keysAndValues ...any)
	GetSink() logr.LogSink
	GetV() int
	Info(msg string, keysAndValues ...any)
	IsZero() bool
	V(level int) logr.Logger
	WithCallDepth(depth int) logr.Logger
	WithCallStackHelper() (func(), logr.Logger)
	WithName(name string) logr.Logger
	WithSink(sink logr.LogSink) logr.Logger
	WithValues(keysAndValues ...any) logr.Logger
}

type MergedContext

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

func NewMergedContext

func NewMergedContext(ctx1, ctx2 context.Context) *MergedContext

func (*MergedContext) Deadline

func (m *MergedContext) Deadline() (deadline time.Time, ok bool)

func (*MergedContext) Done

func (m *MergedContext) Done() <-chan struct{}

func (*MergedContext) Err

func (m *MergedContext) Err() error

func (*MergedContext) Value

func (m *MergedContext) Value(key any) any

type NilTracer

type NilTracer struct {
	embedded.Tracer
}

func (*NilTracer) StartSpan

func (nt *NilTracer) StartSpan(globalCtx *context.Context, localCtx context.Context, spanName string, opts ...trace.SpanStartOption) (context.Context, trace.Span)

type OtelTracer

type OtelTracer struct {
	trace.Tracer
}

func NewOtelTracer

func NewOtelTracer(t trace.Tracer) *OtelTracer

func (*OtelTracer) StartSpan

func (t *OtelTracer) StartSpan(globalCtx *context.Context, localCtx context.Context, spanName string, opts ...trace.SpanStartOption) (context.Context, trace.Span)

type SentryTracer

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

func NewSentryTracer

func NewSentryTracer(t trace.Tracer) *SentryTracer

func (*SentryTracer) StartSpan

func (t *SentryTracer) StartSpan(globalCtx *context.Context, localCtx context.Context, spanName string, opts ...trace.SpanStartOption) (context.Context, trace.Span)

type Tracer

type Tracer interface {
	StartSpan(globalCtx *context.Context, localCtx context.Context, spanName string, opts ...trace.SpanStartOption) (context.Context, trace.Span)
}

Jump to

Keyboard shortcuts

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