Tempo: automatic native histogram check for service graph (#108394)

* add new dataquery field for identifying which histogram type

* run make gen-cue to update tempo dataquery

* add native histogram check function & look for dataquery flag

* remove console log

* check for native histograms in queryfield

* only run query when histograms have not been migrated yet

* use less resource intensive query, just check if series are there

* fix type issue

* use series as better for detecting existence of a metric, fix betterer things

* fix type

* fix import

* remove metric name from func

* use datasrource func and don't make a new one

* remove string for boolean check in service graph functions

* fix bug for switching tempo data sources

* handle race condition for unmounting before async call is completed

* fix imports

* add todo to implement getNativeHistograms in Prometheus data source

* add todo to remove automatic check once tempo fully migrates to native histograms

* add todo to remove the native histogram config option
This commit is contained in:
Brendan O'Handley
2025-08-25 19:43:22 +00:00
committed by GitHub
parent a806f2db99
commit 4d2decfa0c
9 changed files with 133 additions and 55 deletions
@@ -42,6 +42,8 @@ type TempoQuery struct {
ServiceMapQuery *StringOrArrayOfString `json:"serviceMapQuery,omitempty"`
// Use service.namespace in addition to service.name to uniquely identify a service.
ServiceMapIncludeNamespace *bool `json:"serviceMapIncludeNamespace,omitempty"`
// Whether to use native histograms for service map queries
ServiceMapUseNativeHistograms *bool `json:"serviceMapUseNativeHistograms,omitempty"`
// Defines the maximum number of traces that are returned from Tempo
Limit *int64 `json:"limit,omitempty"`
// Defines the maximum number of spans per spanset that are returned from Tempo