Skip to content

QueryBuilder🔗

Constructor🔗

func NewQueryBuilder() *QueryBuilder

Methods🔗

Build🔗

Builds the object.

func (builder *QueryBuilder) Build() (dashboardv2beta1.DataQueryKind, error)

Datasource🔗

New type for datasource reference

Not creating a new type until we figure out how to handle DS refs for group by, adhoc, and every place that uses DataSourceRef in TS.

func (builder *QueryBuilder) Datasource(datasource cog.Builder[dashboardv2beta1.Dashboardv2beta1DataQueryKindDatasource]) *QueryBuilder

Exemplars🔗

For metric queries, how many exemplars to request, 0 means no exemplars

func (builder *QueryBuilder) Exemplars(exemplars int64) *QueryBuilder

Filters🔗

func (builder *QueryBuilder) Filters(filters []cog.Builder[tempo.TraceqlFilter]) *QueryBuilder

GroupBy🔗

deprecated Filters that are used to query the metrics summary

func (builder *QueryBuilder) GroupBy(groupBy []cog.Builder[tempo.TraceqlFilter]) *QueryBuilder

Hide🔗

If hide is set to true, Grafana will filter out the response(s) associated with this query before returning it to the panel.

func (builder *QueryBuilder) Hide(hide bool) *QueryBuilder

Limit🔗

Defines the maximum number of traces that are returned from Tempo

func (builder *QueryBuilder) Limit(limit int64) *QueryBuilder

MaxDuration🔗

@deprecated Define the maximum duration to select traces. Use duration format, for example: 1.2s, 100ms

func (builder *QueryBuilder) MaxDuration(maxDuration string) *QueryBuilder

MetricsQueryType🔗

For metric queries, whether to run instant or range queries

func (builder *QueryBuilder) MetricsQueryType(metricsQueryType tempo.MetricsQueryType) *QueryBuilder

MinDuration🔗

@deprecated Define the minimum duration to select traces. Use duration format, for example: 1.2s, 100ms

func (builder *QueryBuilder) MinDuration(minDuration string) *QueryBuilder

OldDatasource🔗

For mixed data sources the selected datasource is on the query level.

For non mixed scenarios this is undefined.

TODO find a better way to do this ^ that's friendly to schema

TODO this shouldn't be unknown but DataSourceRef | null

func (builder *QueryBuilder) OldDatasource(datasource common.DataSourceRef) *QueryBuilder

Query🔗

TraceQL query or trace ID

func (builder *QueryBuilder) Query(query string) *QueryBuilder

QueryType🔗

Specify the query flavor

TODO make this required and give it a default

func (builder *QueryBuilder) QueryType(queryType string) *QueryBuilder

RefId🔗

A unique identifier for the query within the list of targets.

In server side expressions, the refId is used as a variable name to identify results.

By default, the UI will assign A->Z; however setting meaningful names may be useful.

func (builder *QueryBuilder) RefId(refId string) *QueryBuilder

@deprecated Logfmt query to filter traces by their tags. Example: http.status_code=200 error=true

func (builder *QueryBuilder) Search(search string) *QueryBuilder

ServiceMapIncludeNamespace🔗

Use service.namespace in addition to service.name to uniquely identify a service.

func (builder *QueryBuilder) ServiceMapIncludeNamespace(serviceMapIncludeNamespace bool) *QueryBuilder

ServiceMapQuery🔗

Filters to be included in a PromQL query to select data for the service graph. Example: {client="app",service="app"}. Providing multiple values will produce union of results for each filter, using PromQL OR operator internally.

func (builder *QueryBuilder) ServiceMapQuery(serviceMapQuery tempo.StringOrArrayOfString) *QueryBuilder

ServiceName🔗

@deprecated Query traces by service name

func (builder *QueryBuilder) ServiceName(serviceName string) *QueryBuilder

SpanName🔗

@deprecated Query traces by span name

func (builder *QueryBuilder) SpanName(spanName string) *QueryBuilder

Spss🔗

Defines the maximum number of spans per spanset that are returned from Tempo

func (builder *QueryBuilder) Spss(spss int64) *QueryBuilder

Step🔗

For metric queries, the step size to use

func (builder *QueryBuilder) Step(step string) *QueryBuilder

TableType🔗

The type of the table that is used to display the search results

func (builder *QueryBuilder) TableType(tableType tempo.SearchTableType) *QueryBuilder

Version🔗

func (builder *QueryBuilder) Version(version string) *QueryBuilder

See also🔗