Documentation ¶
Index ¶
- Variables
- func FindConnection(ctx Context, name, namespace string) (*models.Connection, error)
- func FindConnectionByURL(ctx Context, connectionString string) (*models.Connection, error)
- func GetConfigMapFromCache(ctx Context, namespace, name, key string) (string, error)
- func GetConnection(ctx Context, name, namespace string) (*models.Connection, error)
- func GetEnvStringFromCache(ctx Context, env string, namespace string) (string, error)
- func GetEnvValueFromCache(ctx Context, input types.EnvVar, namespace string) (value string, err error)
- func GetHelmValueFromCache(ctx Context, namespace, releaseName, key string) (string, error)
- func GetSecretFromCache(ctx Context, namespace, name, key string) (string, error)
- func GetServiceAccountTokenFromCache(ctx Context, namespace, serviceAccount string) (string, error)
- func HydrateConnection(ctx Context, connection *models.Connection) (*models.Connection, error)
- func HydrateConnectionByURL(ctx Context, connectionString string) (*models.Connection, error)
- func IsValidConnectionURL(connectionString string) bool
- func Objects(k gocontext.Context) []any
- func UpdateProperties(ctx Context, props map[string]string) error
- func UpdateProperty(ctx Context, key, value string) error
- type AnnotationsAccessor
- type Context
- func (k Context) Agent() *models.Agent
- func (k Context) ClearCache()
- func (k Context) Counter(name string, labels ...string) Counter
- func (k Context) DB() *gorm.DB
- func (k Context) Fast(name ...string) Context
- func (k Context) FastDB(name ...string) *gorm.DB
- func (k Context) Gauge(name string, labels ...string) Gauge
- func (k Context) GetAnnotations() map[string]string
- func (k Context) GetConfigMapFromCache(namespace, name, key string) (string, error)
- func (ctx Context) GetConnection(name, namespace string) (*models.Connection, error)
- func (k Context) GetEnvStringFromCache(env string, namespace string) (string, error)
- func (k Context) GetEnvValueFromCache(input types.EnvVar, namespace string) (string, error)
- func (k Context) GetLabels() map[string]string
- func (k Context) GetLoggingContext() map[string]any
- func (k Context) GetName() string
- func (k Context) GetNamespace() string
- func (k Context) GetObjectMeta() metav1.ObjectMeta
- func (k Context) GetSecretFromCache(namespace, name, key string) (string, error)
- func (k Context) Histogram(name string, buckets []float64, labels ...string) Histogram
- func (k Context) HydrateConnection(connection *models.Connection) (*models.Connection, error)
- func (k Context) HydrateConnectionByURL(connectionString string) (*models.Connection, error)
- func (k Context) IsTracing() bool
- func (k *Context) Kubernetes() kubernetes.Interface
- func (k *Context) KubernetesClient() *dutyKubernetes.Client
- func (k *Context) KubernetesDynamicClient() *dutyKubernetes.Clientdeprecated
- func (k *Context) KubernetesRestConfig() *rest.Config
- func (k Context) NewStructTemplater(vals map[string]any, requiredTag string, funcs map[string]any) gomplate.StructTemplater
- func (k Context) Objects() []any
- func (k Context) Oops(tags ...string) oops.OopsErrorBuilder
- func (k Context) Pool() *pgxpool.Pool
- func (k Context) Properties() Properties
- func (k Context) RunTemplate(t gomplate.Template, env map[string]any) (string, error)
- func (k Context) StartSpan(name string) (Context, trace.Span)
- func (k Context) String() string
- func (k Context) Subject() string
- func (k Context) Topology() any
- func (k Context) Transaction(fn func(ctx Context, span trace.Span) error, opts ...any) error
- func (k Context) User() *models.Person
- func (k Context) Verbose() logger.Logger
- func (k Context) WithAgent(agent models.Agent) Context
- func (k Context) WithAnyValue(key, val any) Context
- func (k Context) WithAppendObject(object any) Context
- func (k Context) WithDB(db *gorm.DB, pool *pgxpool.Pool) Context
- func (k Context) WithDBLogLevel(level any) Context
- func (k Context) WithDBLogger(name string, baseLevel any) Context
- func (k Context) WithDeadline(deadline time.Time) (Context, gocontext.CancelFunc)
- func (k Context) WithDebug() Context
- func (k *Context) WithKubeconfig(input types.EnvVar) (*Context, error)
- func (k Context) WithKubernetes(client kubernetes.Interface, config *rest.Config) Context
- func (k Context) WithLoggingValues(args ...interface{}) Context
- func (k Context) WithName(name string) Context
- func (k Context) WithNamespace(namespace string) Context
- func (k Context) WithObject(object ...any) Context
- func (k Context) WithSubject(subject string) Context
- func (k Context) WithTimeout(timeout time.Duration) (Context, gocontext.CancelFunc)
- func (k Context) WithTopology(topology any) Context
- func (k Context) WithTrace() Context
- func (k Context) WithUser(user *models.Person) Context
- func (k Context) WithValue(key, val any) Context
- func (k Context) WithoutName() Context
- func (k Context) WithoutTracing() Context
- func (k Context) Wrap(ctx gocontext.Context) Context
- func (k Context) WrapEcho(c echo.Context) Context
- type ContextAccessor
- type ContextAccessor2
- type Counter
- type Gauge
- type Gormable
- type Histogram
- type LabelsAccessor
- type NameAccessor
- type NamespaceAccess
- type PKAccessor
- type Poolable
- type Properties
- func (p Properties) Duration(key string, def time.Duration) time.Duration
- func (p Properties) Int(key string, def int) int
- func (p Properties) Off(key string, def bool) bool
- func (p Properties) On(def bool, keys ...string) bool
- func (p Properties) String(key string, def string) string
- func (p Properties) SupportedProperties() map[string]PropertyType
- type PropertyType
Constants ¶
This section is empty.
Variables ¶
var (
ErrNotFound = errors.New("NOT_FOUND")
)
var LatencyBuckets = []float64{ float64(10 * time.Millisecond), float64(100 * time.Millisecond), float64(500 * time.Millisecond), float64(1 * time.Second), float64(10 * time.Second), }
var LongLatencyBuckets = []float64{ float64(1 * time.Second), float64(10 * time.Second), float64(100 * time.Second), float64(1000 * time.Second), }
var MetricsLogLevel = 5
var ShortLatencyBuckets = []float64{ float64(10 * time.Millisecond), float64(100 * time.Millisecond), float64(500 * time.Millisecond), }
var TemplateFuncs = make(map[string]func(Context) any)
Functions ¶
func FindConnection ¶ added in v1.0.207
func FindConnection(ctx Context, name, namespace string) (*models.Connection, error)
FindConnection returns the connection with the given type and name
func FindConnectionByURL ¶ added in v1.0.207
func FindConnectionByURL(ctx Context, connectionString string) (*models.Connection, error)
FindConnectionByURL retrieves a connection from the given connection string. The connection string is expected to be in one of the following forms:
- connection://<namespace>/<name> or connection://<name>
- the UUID of the connection.
func GetConfigMapFromCache ¶ added in v1.0.207
func GetConnection ¶ added in v1.0.207
func GetConnection(ctx Context, name, namespace string) (*models.Connection, error)
func GetEnvStringFromCache ¶ added in v1.0.207
func GetEnvValueFromCache ¶ added in v1.0.207
func GetHelmValueFromCache ¶ added in v1.0.239
func GetSecretFromCache ¶ added in v1.0.207
func GetServiceAccountTokenFromCache ¶ added in v1.0.233
func HydrateConnection ¶ added in v1.0.207
func HydrateConnection(ctx Context, connection *models.Connection) (*models.Connection, error)
Create a cache with a default expiration time of 5 minutes, and which purges expired items every 10 minutes var connectionCache = cache.New(5*time.Minute, 10*time.Minute)
func HydrateConnectionByURL ¶ added in v1.0.216
func HydrateConnectionByURL(ctx Context, connectionString string) (*models.Connection, error)
HydrateConnectionByURL retrieves a connection from the given connection string. The connection string is expected to be in one of the following forms:
- connection://<namespace>/<name> or connection://<name>
- the UUID of the connection.
func IsValidConnectionURL ¶ added in v1.0.207
func UpdateProperties ¶ added in v1.0.259
func UpdateProperty ¶ added in v1.0.259
Types ¶
type AnnotationsAccessor ¶ added in v1.0.564
type Context ¶
func New ¶ added in v1.0.253
func New(opts ...commons.ContextOptions) Context
func NewContext ¶
func NewContext(baseCtx gocontext.Context, opts ...commons.ContextOptions) Context
func (Context) ClearCache ¶ added in v1.0.250
func (k Context) ClearCache()
func (Context) FastDB ¶ added in v1.0.254
FastDB returns a db suitable for high-performance usage, with limited logging and tracing
func (Context) GetAnnotations ¶
func (Context) GetConfigMapFromCache ¶
func (Context) GetConnection ¶ added in v1.0.207
func (ctx Context) GetConnection(name, namespace string) (*models.Connection, error)
func (Context) GetEnvStringFromCache ¶
func (Context) GetEnvValueFromCache ¶
func (Context) GetLoggingContext ¶ added in v1.0.564
func (Context) GetNamespace ¶
func (Context) GetObjectMeta ¶
func (k Context) GetObjectMeta() metav1.ObjectMeta
func (Context) GetSecretFromCache ¶
func (Context) HydrateConnection ¶
func (k Context) HydrateConnection(connection *models.Connection) (*models.Connection, error)
func (Context) HydrateConnectionByURL ¶ added in v1.0.216
func (k Context) HydrateConnectionByURL(connectionString string) (*models.Connection, error)
func (*Context) Kubernetes ¶
func (k *Context) Kubernetes() kubernetes.Interface
func (*Context) KubernetesClient ¶ added in v1.0.770
func (k *Context) KubernetesClient() *dutyKubernetes.Client
func (*Context) KubernetesDynamicClient
deprecated
added in
v1.0.596
func (k *Context) KubernetesDynamicClient() *dutyKubernetes.Client
Deprecated: Use KubernetesClient
func (*Context) KubernetesRestConfig ¶ added in v1.0.596
func (Context) NewStructTemplater ¶ added in v1.0.345
func (Context) Properties ¶ added in v1.0.245
func (k Context) Properties() Properties
Properties returns a cached map of properties
func (Context) RunTemplate ¶ added in v1.0.343
func (Context) Transaction ¶ added in v1.0.564
func (Context) WithAgent ¶ added in v1.0.295
WithAgent sets the current session's agent in the context
func (Context) WithAnyValue ¶ added in v1.0.276
// Deprecated: use WithValue
func (Context) WithAppendObject ¶ added in v1.0.607
func (Context) WithDBLogLevel ¶ added in v1.0.250
Changes the minimum log level for db statements
func (Context) WithDBLogger ¶ added in v1.0.567
Returns a new named logger, the default db log level starts at INFO for DDL and then increases to TRACE1 depending on the query type and rows returned set a baseLevel at Debug, will increase all the levels by 1
func (Context) WithDeadline ¶ added in v1.0.307
func (*Context) WithKubeconfig ¶ added in v1.0.596
func (Context) WithKubernetes ¶
func (Context) WithLoggingValues ¶ added in v1.0.564
func (Context) WithNamespace ¶ added in v1.0.197
func (Context) WithObject ¶
Order the objects from parent -> child
func (Context) WithSubject ¶ added in v1.0.773
Rbac subject
func (Context) WithTimeout ¶ added in v1.0.197
func (Context) WithTopology ¶ added in v1.0.276
func (Context) WithoutName ¶ added in v1.0.307
func (Context) WithoutTracing ¶ added in v1.0.325
type ContextAccessor ¶ added in v1.0.564
type ContextAccessor2 ¶ added in v1.0.577
type Counter ¶ added in v1.0.317
type Counter struct { Context Context Name string Labels map[string]string Counter *prometheus.CounterVec }
type Gauge ¶ added in v1.0.419
type Histogram ¶ added in v1.0.317
type Histogram struct { Context Context Name string Histogram *prometheus.HistogramVec Labels map[string]string }
type LabelsAccessor ¶ added in v1.0.564
type NameAccessor ¶ added in v1.0.564
type NameAccessor interface {
GetName() string
}
type NamespaceAccess ¶ added in v1.0.564
type NamespaceAccess interface {
GetNamespace() string
}
type PKAccessor ¶ added in v1.0.607
type PKAccessor interface {
PK() string
}
type Properties ¶ added in v1.0.307
func (Properties) Off ¶ added in v1.0.307
func (p Properties) Off(key string, def bool) bool
Returns true if the property is false|disabled|off, if there is no property it defaults to true
func (Properties) On ¶ added in v1.0.307
func (p Properties) On(def bool, keys ...string) bool
Returns true if the property is true|enabled|on, if there is no property it defaults to true
func (Properties) String ¶ added in v1.0.385
func (p Properties) String(key string, def string) string
func (Properties) SupportedProperties ¶ added in v1.0.548
func (p Properties) SupportedProperties() map[string]PropertyType