Help us shape the future of Go! Take the 2026 Go Developer Survey

metrics

package
v3.5.6 Latest Latest
Warning

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

Go to latest
Published: Oct 20, 2026 License: Apache-2.0 Imports: 29 Imported by: 0

Documentation

Index

Constants

View Source
const (
	// MetricsPath is the endpoint to collect application metrics
	MetricsPath = "/metrics"
)

Variables

This section is empty.

Functions

func AddMetricsTransportWrapper

func AddMetricsTransportWrapper(server *MetricsServer, app *v1alpha1.Application, config *rest.Config) *rest.Config

AddMetricsTransportWrapper adds a transport wrapper which increments 'argocd_app_k8s_request_total' counter on each kubernetes request

func NewAppCollector

func NewAppCollector(appLister applister.ApplicationLister, appFilter func(obj any) bool, appLabels []string, appConditions []string, db db.ArgoDB) prometheus.Collector

NewAppCollector returns a prometheus collector for application metrics

func NewAppRegistry

func NewAppRegistry(appLister applister.ApplicationLister, appFilter func(obj any) bool, appLabels []string, appConditions []string, db db.ArgoDB) *prometheus.Registry

NewAppRegistry creates a new prometheus registry that collects applications

func NewClusterCollector

func NewClusterCollector(ctx context.Context, source HasClustersInfo, clusterLister ClusterLister, clusterLabels []string) prometheus.Collector

Types

type ClusterLister

type ClusterLister func(ctx context.Context) (*argoappv1.ClusterList, error)

type HasClustersInfo

type HasClustersInfo interface {
	GetClustersInfo() []cache.ClusterInfo
}

type MetricsServer

type MetricsServer struct {
	*http.Server
	// contains filtered or unexported fields
}

func NewMetricsServer

func NewMetricsServer(addr string, appLister applister.ApplicationLister, appFilter func(obj any) bool, healthCheck func(r *http.Request) error, appLabels []string, appConditions []string, db db.ArgoDB) (*MetricsServer, error)

NewMetricsServer returns a new prometheus server which collects application metrics

func (*MetricsServer) DecKubectlExecPending

func (m *MetricsServer) DecKubectlExecPending(command string)

func (*MetricsServer) HasExpiration

func (m *MetricsServer) HasExpiration() bool

HasExpiration return true if expiration is set

func (*MetricsServer) IncAppSyncDuration added in v3.1.0

func (m *MetricsServer) IncAppSyncDuration(app *argoappv1.Application, destServer string, state *argoappv1.OperationState)

IncAppSyncDuration observes app sync duration

func (*MetricsServer) IncClusterEventsCount

func (m *MetricsServer) IncClusterEventsCount(server, group, kind string)

IncClusterEventsCount increments the number of cluster events

func (*MetricsServer) IncKubectlExec

func (m *MetricsServer) IncKubectlExec(command string)

func (*MetricsServer) IncKubectlExecPending

func (m *MetricsServer) IncKubectlExecPending(command string)

func (*MetricsServer) IncKubernetesRequest

func (m *MetricsServer) IncKubernetesRequest(app *argoappv1.Application, server, statusCode, verb, resourceKind, resourceNamespace string)

IncKubernetesRequest increments the kubernetes requests counter for an application

func (*MetricsServer) IncReconcile

func (m *MetricsServer) IncReconcile(app *argoappv1.Application, destServer string, duration time.Duration)

IncReconcile increments the reconcile counter for an application

func (*MetricsServer) IncRedisRequest

func (m *MetricsServer) IncRedisRequest(command string, failed bool)

func (*MetricsServer) IncSync

func (m *MetricsServer) IncSync(app *argoappv1.Application, destServer string, state *argoappv1.OperationState)

IncSync increments the sync counter for an application

func (*MetricsServer) ObserveRedisRequestDuration

func (m *MetricsServer) ObserveRedisRequestDuration(duration time.Duration)

ObserveRedisRequestDuration observes redis request duration

func (*MetricsServer) ObserveResourceEventsProcessingDuration

func (m *MetricsServer) ObserveResourceEventsProcessingDuration(server string, duration time.Duration, processedEventsNumber int)

ObserveResourceEventsProcessingDuration observes resource events processing duration

func (*MetricsServer) RegisterClustersInfoSource

func (m *MetricsServer) RegisterClustersInfoSource(ctx context.Context, source HasClustersInfo, db db.ArgoDB, clusterLabels []string)

func (*MetricsServer) SetExpiration

func (m *MetricsServer) SetExpiration(cacheExpiration time.Duration) error

SetExpiration reset Prometheus metrics based on time duration interval

func (*MetricsServer) SetOrphanedResourcesMetric

func (m *MetricsServer) SetOrphanedResourcesMetric(app *argoappv1.Application, numOrphanedResources int)

Jump to

Keyboard shortcuts

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