github.com/yankunsam/loki/v2@v2.6.3-0.20220817130409-389df5235c27/pkg/storage/stores/indexshipper/compactor/deletion/metrics.go (about) 1 package deletion 2 3 import ( 4 "github.com/prometheus/client_golang/prometheus" 5 "github.com/prometheus/client_golang/prometheus/promauto" 6 ) 7 8 type DeleteRequestClientMetrics struct { 9 deleteRequestsLookupsTotal *prometheus.CounterVec 10 deleteRequestsLookupsFailedTotal *prometheus.CounterVec 11 } 12 13 func NewDeleteRequestClientMetrics(r prometheus.Registerer) *DeleteRequestClientMetrics { 14 m := DeleteRequestClientMetrics{} 15 16 m.deleteRequestsLookupsTotal = promauto.With(r).NewCounterVec(prometheus.CounterOpts{ 17 Namespace: "loki", 18 Name: "delete_request_lookups_total", 19 Help: "Number times the client has looked up delete requests", 20 }, []string{"client_type"}) 21 22 m.deleteRequestsLookupsFailedTotal = promauto.With(r).NewCounterVec(prometheus.CounterOpts{ 23 Namespace: "loki", 24 Name: "delete_request_lookups_failed_total", 25 Help: "Number times the client has failed to look up delete requests", 26 }, []string{"client_type"}) 27 28 return &m 29 } 30 31 type deleteRequestHandlerMetrics struct { 32 deleteRequestsReceivedTotal *prometheus.CounterVec 33 } 34 35 func newDeleteRequestHandlerMetrics(r prometheus.Registerer) *deleteRequestHandlerMetrics { 36 m := deleteRequestHandlerMetrics{} 37 38 m.deleteRequestsReceivedTotal = promauto.With(r).NewCounterVec(prometheus.CounterOpts{ 39 Namespace: "loki", 40 Name: "compactor_delete_requests_received_total", 41 Help: "Number of delete requests received per user", 42 }, []string{"user"}) 43 44 return &m 45 } 46 47 type deleteRequestsManagerMetrics struct { 48 deleteRequestsProcessedTotal *prometheus.CounterVec 49 deleteRequestsChunksSelectedTotal *prometheus.CounterVec 50 loadPendingRequestsAttemptsTotal *prometheus.CounterVec 51 deletionFailures *prometheus.CounterVec 52 oldestPendingDeleteRequestAgeSeconds prometheus.Gauge 53 pendingDeleteRequestsCount prometheus.Gauge 54 deletedLinesTotal *prometheus.CounterVec 55 } 56 57 func newDeleteRequestsManagerMetrics(r prometheus.Registerer) *deleteRequestsManagerMetrics { 58 m := deleteRequestsManagerMetrics{} 59 60 m.deleteRequestsProcessedTotal = promauto.With(r).NewCounterVec(prometheus.CounterOpts{ 61 Namespace: "loki", 62 Name: "compactor_delete_requests_processed_total", 63 Help: "Number of delete requests processed per user", 64 }, []string{"user"}) 65 m.deleteRequestsChunksSelectedTotal = promauto.With(r).NewCounterVec(prometheus.CounterOpts{ 66 Namespace: "loki", 67 Name: "compactor_delete_requests_chunks_selected_total", 68 Help: "Number of chunks selected while building delete plans per user", 69 }, []string{"user"}) 70 m.deletionFailures = promauto.With(r).NewCounterVec(prometheus.CounterOpts{ 71 Namespace: "loki", 72 Name: "compactor_delete_processing_fails_total", 73 Help: "Number times the delete phase of compaction has failed", 74 }, []string{"cause"}) 75 m.loadPendingRequestsAttemptsTotal = promauto.With(r).NewCounterVec(prometheus.CounterOpts{ 76 Namespace: "loki", 77 Name: "compactor_load_pending_requests_attempts_total", 78 Help: "Number of attempts that were made to load pending requests with status", 79 }, []string{"status"}) 80 m.oldestPendingDeleteRequestAgeSeconds = promauto.With(r).NewGauge(prometheus.GaugeOpts{ 81 Namespace: "loki", 82 Name: "compactor_oldest_pending_delete_request_age_seconds", 83 Help: "Age of oldest pending delete request in seconds, since they are over their cancellation period", 84 }) 85 m.pendingDeleteRequestsCount = promauto.With(r).NewGauge(prometheus.GaugeOpts{ 86 Namespace: "loki", 87 Name: "compactor_pending_delete_requests_count", 88 Help: "Count of delete requests which are over their cancellation period and have not finished processing yet", 89 }) 90 m.deletedLinesTotal = promauto.With(r).NewCounterVec(prometheus.CounterOpts{ 91 Namespace: "loki", 92 Name: "compactor_deleted_lines", 93 Help: "Number of deleted lines per user", 94 }, []string{"user"}) 95 96 return &m 97 }