package metric

import "github.com/prometheus/client_golang/prometheus"

var (
	FailedMigrations = prometheus.NewDesc(
		prometheus.BuildFQName(MetricNamespace, "migration", "failed_number"),
		"Recent failed migrations",
		[]string{"tenant_id", "cluster_id", "task_id", "err_msg"},
		nil)

	TransitionalDurationSeconds = prometheus.NewDesc(
		prometheus.BuildFQName(MetricNamespace, "migration", "transitional_duration_seconds"),
		"The duration in seconds that a data migration task remains in transitional states such as deleting",
		[]string{"tenant_id", "cluster_id", "task_id", "stage"},
		nil)

	EndpointTransitionalDurationSeconds = prometheus.NewDesc(
		prometheus.BuildFQName(MetricNamespace, "migration", "endpoint_transitional_duration_seconds"),
		"The duration in seconds that a vpc endpoint remains in transitional states such as deleting",
		[]string{"cluster_id", "vpc_endpoint_id", "stage"},
		nil)
)
