fix(influxdb): fixes broken raw query usage

pull/6538/head
bergquist 9 years ago
parent 9f7d0862e8
commit a948dfe514
  1. 2
      pkg/tsdb/influxdb/model_parser.go
  2. 1
      pkg/tsdb/influxdb/models.go
  3. 2
      pkg/tsdb/influxdb/query_builder.go
  4. 1
      pkg/tsdb/influxdb/query_builder_test.go

@ -12,6 +12,7 @@ type InfluxdbQueryParser struct{}
func (qp *InfluxdbQueryParser) Parse(model *simplejson.Json, dsInfo *tsdb.DataSourceInfo) (*Query, error) {
policy := model.Get("policy").MustString("default")
rawQuery := model.Get("query").MustString("")
useRawQuery := model.Get("rawQuery").MustBool(false)
alias := model.Get("alias").MustString("")
measurement := model.Get("measurement").MustString("")
@ -54,6 +55,7 @@ func (qp *InfluxdbQueryParser) Parse(model *simplejson.Json, dsInfo *tsdb.DataSo
RawQuery: rawQuery,
Interval: interval,
Alias: alias,
UseRawQuery: useRawQuery,
}, nil
}

@ -8,6 +8,7 @@ type Query struct {
GroupBy []*QueryPart
Selects []*Select
RawQuery string
UseRawQuery bool
Alias string
Interval string

@ -17,7 +17,7 @@ var (
type QueryBuilder struct{}
func (qb *QueryBuilder) Build(query *Query, queryContext *tsdb.QueryContext) (string, error) {
if query.RawQuery != "" {
if query.UseRawQuery && query.RawQuery != "" {
q := query.RawQuery
q = strings.Replace(q, "$timeFilter", qb.renderTimeFilter(query, queryContext), 1)

@ -79,6 +79,7 @@ func TestInfluxdbQueryBuilder(t *testing.T) {
GroupBy: []*QueryPart{groupBy1, groupBy3},
Interval: "10s",
RawQuery: "Raw query",
UseRawQuery: true,
}
rawQuery, err := builder.Build(query, queryContext)

Loading…
Cancel
Save