metrics

package
v1.73.4 Latest Latest
Warning

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

Go to latest
Published: Nov 18, 2025 License: Apache-2.0 Imports: 4 Imported by: 0

Documentation

Overview

Package metrics provides centralized metric names for deckhouse-controller. All metric names use constants to ensure consistency and prevent typos. The {PREFIX} placeholder is replaced by the metrics storage with the appropriate prefix.

Index

Constants

View Source
const (
	// ============================================================================
	// Module Manager Metrics
	// ============================================================================
	// Migration and experimental module tracking
	MigratedModuleNotFoundMetricName        = "d8_migrated_module_not_found"
	ExperimentalModulesAreAllowedMetricName = "is_experimental_modules_allowed"
	ExperimentalModuleIsEnabled             = "is_experimental_module_enabled"
	DeprecatedModuleIsEnabled               = "is_deprecated_module_enabled"

	// ============================================================================
	// Deckhouse Release Controller Metrics
	// ============================================================================
	// Registry and digest check counters
	DeckhouseRegistryCheckTotal          = "deckhouse_registry_check_total"
	DeckhouseKubeImageDigestCheckTotal   = "deckhouse_kube_image_digest_check_total"
	DeckhouseRegistryCheckErrorsTotal    = "deckhouse_registry_check_errors_total"
	DeckhouseKubeImageDigestCheckSuccess = "deckhouse_kube_image_digest_check_success"

	// Update status gauges
	D8IsUpdating       = "d8_is_updating"
	D8UpdatingIsFailed = "d8_updating_is_failed"

	// ============================================================================
	// Module Config Controller Metrics
	// ============================================================================
	// Configuration status tracking
	D8ModuleConfigObsoleteVersion  = "d8_module_config_obsolete_version"
	D8ModuleAtConflict             = "d8_module_at_conflict"
	D8ModuleConfigAllowedToDisable = "d8_moduleconfig_allowed_to_disable"

	// ============================================================================
	// Module Source Controller Metrics
	// ============================================================================
	// Source validation and sequence tracking
	D8ModuleUpdatingModuleIsNotValid = "d8_module_updating_module_is_not_valid"
	D8ModuleUpdatingBrokenSequence   = "d8_module_updating_broken_sequence"

	// ============================================================================
	// Module Release Controller Metrics
	// ============================================================================
	// Release operation metrics (with PREFIX placeholder)
	ModulePullSecondsTotal     = "{PREFIX}module_pull_seconds_total"
	ModuleSizeBytesTotal       = "{PREFIX}module_size_bytes_total"
	ModuleUpdatePolicyNotFound = "{PREFIX}module_update_policy_not_found"
	ModuleConfigurationError   = "{PREFIX}module_configuration_error"
)

Metric name constants organized by functional area. Each constant represents a unique metric name used throughout deckhouse-controller.

View Source
const (
	MigratedModuleNotFoundGroup = "migrated_module_not_found"
	D8Updating                  = "d8_updating"
	D8ModuleUpdatingGroup       = "d8_module_updating_group"
)

============================================================================ Metric Groups ============================================================================

View Source
const (
	ObsoleteConfigMetricGroupTemplate = "obsoleteVersion_%s"
	ModuleConflictMetricGroupTemplate = "module_%s_at_conflict"
)

Group templates for dynamic metric names using fmt.Sprintf

Variables

This section is empty.

Functions

func RegisterDeckhouseControllerMetrics added in v1.73.0

func RegisterDeckhouseControllerMetrics(metricStorage metricsstorage.Storage) error

RegisterDeckhouseControllerMetrics registers all metrics used by deckhouse-controller. This function should be called during controller initialization to ensure all metrics are available when needed.

func RegisterDeckhouseReleaseMetrics added in v1.73.0

func RegisterDeckhouseReleaseMetrics(metricStorage metricsstorage.Storage) error

RegisterDeckhouseReleaseMetrics registers metrics for Deckhouse release operations, including registry checks, image digest validation, and update status tracking.

func RegisterModuleControllerMetrics added in v1.73.0

func RegisterModuleControllerMetrics(metricStorage metricsstorage.Storage) error

RegisterModuleControllerMetrics registers metrics for module controllers, including config, source, and release controller metrics.

func RegisterModuleManagerMetrics added in v1.73.0

func RegisterModuleManagerMetrics(metricStorage metricsstorage.Storage) error

RegisterModuleManagerMetrics registers metrics related to module management, including experimental modules, migrations, and deprecation tracking.

func WrapTelemetryMetric added in v1.73.0

func WrapTelemetryMetric(metricName string) string

WrapTelemetryMetric wraps a metric name with telemetry for consistent usage. This is a convenience function to standardize telemetry wrapping across the codebase.

Types

This section is empty.

Jump to

Keyboard shortcuts

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