message: added ability to query tags with isnotnull operator
diff: @@ -45,6 +45,12 @@ func buildFilters(queryParams *model.SpanSearchParams) (*godruid.Filter, error)
  newFilter := godruid.FilterSelector("Name", queryParams.OperationName)
  filter = godruid.FilterAnd(filter, newFilter)
  + }
  + if len(queryParams.Kind) != 0 {
  +
  + newFilter := godruid.FilterSelector("Kind", queryParams.Kind)
  + filter = godruid.FilterAnd(filter, newFilter)
  +
  }
  // zap.S().Debug("MinDuration: ", queryParams.MinDuration)
  @@ -75,6 +81,8 @@ func buildFilters(queryParams *model.SpanSearchParams) (*godruid.Filter, error)
  valuesFilter := godruid.FilterSearch("TagsValues", fmt.Sprintf("%s", item.Value))
  keysFilter := godruid.FilterSelector("TagsKeys", fmt.Sprintf("%s", item.Key))
  newFilter = godruid.FilterAnd(valuesFilter, keysFilter)
  + } else if item.Operator == "isnotnull" {
  + newFilter = godruid.FilterSelector("TagsKeys", fmt.Sprintf("%s", item.Key))
  } else {
  return nil, fmt.Errorf("Tag Operator %s not supported", item.Operator)
  }
  @@ -110,6 +118,12 @@ func buildFiltersForSpansAggregates(queryParams *model.SpanSearchAggregatesParam
  newFilter := godruid.FilterSelector("Name", queryParams.OperationName)
  filter = godruid.FilterAnd(filter, newFilter)
  + }
  + if len(queryParams.Kind) != 0 {
  +
  + newFilter := godruid.FilterSelector("Kind", queryParams.Kind)
  + filter = godruid.FilterAnd(filter, newFilter)
  +
  }
  // zap.S().Debug("MinDuration: ", queryParams.MinDuration)
  @@ -140,6 +154,8 @@ func buildFiltersForSpansAggregates(queryParams *model.SpanSearchAggregatesParam
  valuesFilter := godruid.FilterSearch("TagsValues", fmt.Sprintf("%s", item.Value))
  keysFilter := godruid.FilterSelector("TagsKeys", fmt.Sprintf("%s", item.Key))
  newFilter = godruid.FilterAnd(valuesFilter, keysFilter)
  + } else if item.Operator == "isnotnull" {
  + newFilter = godruid.FilterSelector("TagsKeys", fmt.Sprintf("%s", item.Key))
  } else {
  return nil, fmt.Errorf("Tag Operator %s not supported", item.Operator)
  }
  