package monitor

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

var (
	LocalLoggerWriteCounter = prometheus.NewCounterVec(
		prometheus.CounterOpts{
			Namespace: MetricNamespace,
			Name:      "local_logger_write_total",
			Help:      "Total number of the local logger write event",
		},
		[]string{"logger_type", "stage"},
	)

	LocalLoggerRotateProgressGauge = prometheus.NewGaugeVec(
		prometheus.GaugeOpts{
			Namespace: MetricNamespace,
			Name:      "local_logger_rotate_progress_timestmap",
			Help:      "Current timestamp of the logger rotate progress",
		},
		[]string{"logger_type"},
	)

	StoreUploadProgressGauge = prometheus.NewGauge(
		prometheus.GaugeOpts{
			Namespace: MetricNamespace,
			Name:      "store_upload_progress_timestmap",
			Help:      "Current timestamp of the store upload to remote storage progress",
		},
	)
)

func init() {
	prometheus.MustRegister(LocalLoggerWriteCounter)
	prometheus.MustRegister(LocalLoggerRotateProgressGauge)
	prometheus.MustRegister(StoreUploadProgressGauge)
}
