Tempo Query Builder
Constructor#
import query "github.com/perses/plugins/tempo/sdk/go/query"
var options []query.Option
query.TraceQL("abc123def456", options...)Need to provide the trace ID and a list of options.
Default options#
- Expr(): with the TraceQL expression provided in the constructor.
Available options#
Expr#
import query "github.com/perses/plugins/tempo/sdk/go/query"
query.Expr("{ .http.status_code = 200 }")Define the TraceQL expression to query.
Datasource#
import query "github.com/perses/plugins/tempo/sdk/go/query"
query.Datasource("MySuperTempoDatasource")Define the datasource the query will use.
Limit#
import query "github.com/perses/plugins/tempo/sdk/go/query"
query.Limit(100)Limit the number of traces returned by the query.
Example#
package main
import (
"github.com/perses/perses/go-sdk/dashboard"
"github.com/perses/perses/go-sdk/panel"
panelgroup "github.com/perses/perses/go-sdk/panel-group"
query "github.com/perses/plugins/tempo/sdk/go/query"
tracetable "github.com/perses/plugins/tracetable/sdk/go"
)
func main() {
dashboard.New("Tempo Dashboard",
dashboard.AddPanelGroup("Trace Analysis",
panelgroup.AddPanel("Trace Details",
tracetable.Chart(),
panel.AddQuery(
query.TraceQL("{ .http.status_code = 200 }"),
),
),
),
)
}
