Skip to content

QueryBuilder🔗

Constructor🔗

func NewQueryBuilder() *QueryBuilder

Methods🔗

Build🔗

Builds the object.

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

Alias🔗

func (builder *QueryBuilder) Alias(alias string) *QueryBuilder

Channel🔗

Used for live query

func (builder *QueryBuilder) Channel(channel string) *QueryBuilder

CsvContent🔗

func (builder *QueryBuilder) CsvContent(csvContent string) *QueryBuilder

CsvFileName🔗

func (builder *QueryBuilder) CsvFileName(csvFileName string) *QueryBuilder

CsvWave🔗

func (builder *QueryBuilder) CsvWave(csvWave []cog.Builder[testdata.CSVWave]) *QueryBuilder

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

DropPercent🔗

Drop percentage (the chance we will lose a point 0-100)

func (builder *QueryBuilder) DropPercent(dropPercent float64) *QueryBuilder

ErrorSource🔗

Possible enum values:

  • "plugin"

  • "downstream"

func (builder *QueryBuilder) ErrorSource(errorSource testdata.DataqueryErrorSource) *QueryBuilder

ErrorType🔗

Possible enum values:

  • "frontend_exception"

  • "frontend_observable"

  • "server_panic"

func (builder *QueryBuilder) ErrorType(errorType testdata.DataqueryErrorType) *QueryBuilder

FlamegraphDiff🔗

func (builder *QueryBuilder) FlamegraphDiff(flamegraphDiff bool) *QueryBuilder

Hide🔗

true if query is disabled (ie should not be returned to the dashboard)

NOTE: this does not always imply that the query should not be executed since

the results from a hidden query may be used as the input to other queries (SSE etc)

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

IntervalMs🔗

Interval is the suggested duration between time points in a time series query.

NOTE: the values for intervalMs is not saved in the query model. It is typically calculated

from the interval required to fill a pixels in the visualization

func (builder *QueryBuilder) IntervalMs(intervalMs float64) *QueryBuilder

Labels🔗

func (builder *QueryBuilder) Labels(labels string) *QueryBuilder

LevelColumn🔗

func (builder *QueryBuilder) LevelColumn(levelColumn bool) *QueryBuilder

Lines🔗

func (builder *QueryBuilder) Lines(lines int64) *QueryBuilder

Max🔗

func (builder *QueryBuilder) Max(max float64) *QueryBuilder

MaxDataPoints🔗

MaxDataPoints is the maximum number of data points that should be returned from a time series query.

NOTE: the values for maxDataPoints is not saved in the query model. It is typically calculated

from the number of pixels visible in a visualization

func (builder *QueryBuilder) MaxDataPoints(maxDataPoints int64) *QueryBuilder

Min🔗

func (builder *QueryBuilder) Min(min float64) *QueryBuilder

Nodes🔗

func (builder *QueryBuilder) Nodes(nodes cog.Builder[testdata.NodesQuery]) *QueryBuilder

Noise🔗

func (builder *QueryBuilder) Noise(noise float64) *QueryBuilder

OldDatasource🔗

The datasource

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

Points🔗

func (builder *QueryBuilder) Points(points [][]any) *QueryBuilder

PulseWave🔗

func (builder *QueryBuilder) PulseWave(pulseWave cog.Builder[testdata.PulseWaveQuery]) *QueryBuilder

QueryType🔗

QueryType is an optional identifier for the type of query.

It can be used to distinguish different types of queries.

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

RawFrameContent🔗

func (builder *QueryBuilder) RawFrameContent(rawFrameContent string) *QueryBuilder

RefId🔗

RefID is the unique identifier of the query, set by the frontend call.

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

ResultAssertions🔗

Optionally define expected query result behavior

func (builder *QueryBuilder) ResultAssertions(resultAssertions cog.Builder[testdata.ResultAssertions]) *QueryBuilder

ScenarioId🔗

Possible enum values:

  • "annotations"

  • "arrow"

  • "csv_content"

  • "csv_file"

  • "csv_metric_values"

  • "datapoints_outside_range"

  • "error_with_source"

  • "exponential_heatmap_bucket_data"

  • "flame_graph"

  • "grafana_api"

  • "linear_heatmap_bucket_data"

  • "live"

  • "logs"

  • "manual_entry"

  • "no_data_points"

  • "node_graph"

  • "predictable_csv_wave"

  • "predictable_pulse"

  • "query_meta"

  • "random_walk"

  • "random_walk_table"

  • "random_walk_with_error"

  • "raw_frame"

  • "server_error_500"

  • "steps"

  • "simulation"

  • "slow_query"

  • "streaming_client"

  • "table_static"

  • "trace"

  • "usa"

  • "variables-query"

func (builder *QueryBuilder) ScenarioId(scenarioId testdata.DataqueryScenarioId) *QueryBuilder

SeriesCount🔗

func (builder *QueryBuilder) SeriesCount(seriesCount int64) *QueryBuilder

Sim🔗

func (builder *QueryBuilder) Sim(sim cog.Builder[testdata.SimulationQuery]) *QueryBuilder

SpanCount🔗

func (builder *QueryBuilder) SpanCount(spanCount int64) *QueryBuilder

Spread🔗

func (builder *QueryBuilder) Spread(spread float64) *QueryBuilder

StartValue🔗

func (builder *QueryBuilder) StartValue(startValue float64) *QueryBuilder

Stream🔗

func (builder *QueryBuilder) Stream(stream cog.Builder[testdata.StreamingQuery]) *QueryBuilder

StringInput🔗

common parameter used by many query types

func (builder *QueryBuilder) StringInput(stringInput string) *QueryBuilder

TimeRange🔗

TimeRange represents the query range

NOTE: unlike generic /ds/query, we can now send explicit time values in each query

NOTE: the values for timeRange are not saved in a dashboard, they are constructed on the fly

func (builder *QueryBuilder) TimeRange(timeRange cog.Builder[testdata.TimeRange]) *QueryBuilder

Usa🔗

func (builder *QueryBuilder) Usa(usa cog.Builder[testdata.USAQuery]) *QueryBuilder

Version🔗

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

WithNil🔗

func (builder *QueryBuilder) WithNil(withNil bool) *QueryBuilder

See also🔗