Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
38 changes: 24 additions & 14 deletions pp-pkg/storage/adapter.go
Original file line number Diff line number Diff line change
Expand Up @@ -38,6 +38,7 @@ type Adapter struct {
activeQuerierMetrics *querier.Metrics
storageQuerierMetrics *querier.Metrics
appendDuration prometheus.Histogram
samplesAppended prometheus.Counter
}

// NewAdapter init new [Adapter].
Expand Down Expand Up @@ -69,6 +70,11 @@ func NewAdapter(
},
},
),
samplesAppended: factory.NewCounter(prometheus.CounterOpts{
Name: "prometheus_tsdb_head_samples_appended_total",
Help: "Total number of appended samples.",
ConstLabels: prometheus.Labels{"type": "float"},
}),
}
}

Expand All @@ -83,18 +89,20 @@ func (ar *Adapter) AppendHashdex(
return nil
}

start := time.Now()
defer func() {
var floatsAppended float64
defer func(start time.Time) {
ar.appendDuration.Observe(float64(time.Since(start).Microseconds()))
}()
ar.samplesAppended.Add(floatsAppended)
}(time.Now())

return ar.proxy.With(ctx, func(h *pp_storage.Head) error {
_, err := appender.New(h, services.CFViaRange).Append(
stats, err := appender.New(h, services.CFViaRange).Append(
ctx,
&appender.IncomingData{Hashdex: hashdex},
state,
commitToWal,
)
floatsAppended = float64(stats.SamplesAdded)

return err
})
Expand All @@ -107,10 +115,10 @@ func (ar *Adapter) AppendScraperHashdex(
state *cppbridge.StateV2,
commitToWal bool,
) (stats cppbridge.RelabelerStats, err error) {
start := time.Now()
defer func() {
defer func(start time.Time) {
ar.appendDuration.Observe(float64(time.Since(start).Microseconds()))
}()
ar.samplesAppended.Add(float64(stats.SamplesAdded))
}(time.Now())

_ = ar.proxy.With(ctx, func(h *pp_storage.Head) error {
stats, err = appender.New(h, services.CFViaRange).Append(
Expand Down Expand Up @@ -143,18 +151,20 @@ func (ar *Adapter) AppendSnappyProtobuf(
return nil
}

start := time.Now()
defer func() {
var floatsAppended float64
defer func(start time.Time) {
ar.appendDuration.Observe(float64(time.Since(start).Microseconds()))
}()
ar.samplesAppended.Add(floatsAppended)
}(time.Now())

return ar.proxy.With(ctx, func(h *pp_storage.Head) error {
_, err := appender.New(h, services.CFViaRange).Append(
stats, err := appender.New(h, services.CFViaRange).Append(
ctx,
&appender.IncomingData{Hashdex: hx},
state,
commitToWal,
)
floatsAppended = float64(stats.SamplesAdded)

return err
})
Expand All @@ -178,10 +188,10 @@ func (ar *Adapter) AppendTimeSeries(
return stats, nil
}

start := time.Now()
defer func() {
defer func(start time.Time) {
ar.appendDuration.Observe(float64(time.Since(start).Microseconds()))
}()
ar.samplesAppended.Add(float64(stats.SamplesAdded))
}(time.Now())

_ = ar.proxy.With(ctx, func(h *pp_storage.Head) error {
stats, err = appender.New(h, services.CFViaRange).Append(
Expand Down
4 changes: 2 additions & 2 deletions pp/go/storage/head/services/metrics_updater.go
Original file line number Diff line number Diff line change
Expand Up @@ -64,8 +64,8 @@ func NewMetricsUpdater[
[]string{"head_id", "allocator", "shard_id"},
),
series: factory.NewGauge(prometheus.GaugeOpts{
Name: "prompp_head_series",
Help: "Total number of series in the heads block.",
Name: "prometheus_tsdb_head_series",
Help: "Total number of series in the head block.",
}),
walSize: factory.NewGaugeVec(
prometheus.GaugeOpts{
Expand Down
7 changes: 0 additions & 7 deletions pp/go/storage/head/shard/wal/wal.go
Original file line number Diff line number Diff line change
Expand Up @@ -76,7 +76,6 @@ type Wal[TSegment EncodedSegment, TWriter SegmentWriter[TSegment]] struct {
closed bool
// stat
samplesPerSegment prometheus.Counter
sizePerSegment prometheus.Counter
segments prometheus.Gauge
}

Expand All @@ -100,11 +99,6 @@ func NewWal[TSegment EncodedSegment, TWriter SegmentWriter[TSegment]](
Help: "Number of samples per segment.",
ConstLabels: ls,
}),
sizePerSegment: factory.NewCounter(prometheus.CounterOpts{
Name: "prompp_shard_wal_size_per_segment_sum",
Help: "Size of segment.",
ConstLabels: ls,
}),
segments: factory.NewGauge(prometheus.GaugeOpts{
Name: "prompp_shard_wal_segments",
Help: "Number of segments.",
Expand Down Expand Up @@ -165,7 +159,6 @@ func (w *Wal[TSegment, TWriter]) Commit() error {
return fmt.Errorf("failed to finalize segment: %w", err)
}
w.samplesPerSegment.Add(float64(segment.Samples()))
w.sizePerSegment.Add(float64(segment.Size()))
w.segments.Inc()
w.limitExhausted = false

Expand Down
4 changes: 2 additions & 2 deletions tsdb/head.go
Original file line number Diff line number Diff line change
Expand Up @@ -289,7 +289,7 @@ func NewHead(r prometheus.Registerer, l log.Logger, wal, wbl *wlog.WL, opts *Hea
if err != nil {
return nil, err
}
h.metrics = newHeadMetrics(h, r)
h.metrics = newHeadMetrics(h, nil) // PP_CHANGES.md: rebuild on cpp disable metrics

return h, nil
}
Expand All @@ -304,7 +304,7 @@ func (h *Head) resetInMemoryState() error {
}
}
if em == nil {
em = NewExemplarMetrics(h.reg)
em = NewExemplarMetrics(nil) // PP_CHANGES.md: rebuild on cpp disable metrics
}
es, err := NewCircularExemplarStorage(h.opts.MaxExemplars.Load(), em)
if err != nil {
Expand Down
Loading