Skip to content

Commit

Permalink
SignalFx exporter changes to match code review associated with Splunk…
Browse files Browse the repository at this point in the history
… HEC exporter (#255)

* Bring changes to signalfx exporter matching code review comments of #246

* Add test checking for invalid distribution without buckets
  • Loading branch information
atoulme authored Jun 6, 2020
1 parent be43dbc commit ab093e2
Show file tree
Hide file tree
Showing 3 changed files with 37 additions and 8 deletions.
5 changes: 0 additions & 5 deletions exporter/signalfxexporter/exporter.go
Original file line number Diff line number Diff line change
Expand Up @@ -64,11 +64,6 @@ func New(
fmt.Errorf("failed to process %q config: %v", config.Name(), err)
}

if config.Name() == "" {
config.SetType(typeStr)
config.SetName(typeStr)
}

headers, err := buildHeaders(config)
if err != nil {
return nil, err
Expand Down
6 changes: 3 additions & 3 deletions exporter/signalfxexporter/metricdata_to_signalfxv2.go
Original file line number Diff line number Diff line change
Expand Up @@ -163,7 +163,7 @@ func metricDataToSignalFxV2(
logger.Warn(
"Timeseries for distribution metric dropped",
zap.Error(err),
zap.String("Metric", *sfxDataPoint.Metric))
zap.String("metric", *sfxDataPoint.Metric))
}
case *metricspb.Point_SummaryValue:
sfxDataPoints, err = appendSummaryValues(
Expand All @@ -175,13 +175,13 @@ func metricDataToSignalFxV2(
logger.Warn(
"Timeseries for summary metric dropped",
zap.Error(err),
zap.String("Metric", *sfxDataPoint.Metric))
zap.String("metric", *sfxDataPoint.Metric))
}
default:
numDroppedTimeSeries++
logger.Warn(
"Timeseries dropped to unexpected metric type",
zap.String("Metric", *sfxDataPoint.Metric))
zap.String("metric", *sfxDataPoint.Metric))
}

}
Expand Down
34 changes: 34 additions & 0 deletions exporter/signalfxexporter/metricdata_to_signalfxv2_test.go
Original file line number Diff line number Diff line change
Expand Up @@ -336,3 +336,37 @@ func expectedFromSummary(

return dps
}

func Test_InvalidDistribution_NoExplicitBuckets(t *testing.T) {
logger := zap.NewNop()
unixSecs := int64(1574092046)
unixNSecs := int64(11 * time.Millisecond)
tsUnix := time.Unix(unixSecs, unixNSecs)
keys := []string{"k0", "k1"}
values := []string{"v0", "v1"}
buckets := make([]*metricspb.DistributionValue_Bucket, 2)

distrValue := &metricspb.DistributionValue{
BucketOptions: &metricspb.DistributionValue_BucketOptions{
Type: &metricspb.DistributionValue_BucketOptions_Explicit_{
Explicit: nil,
},
},
Count: 42,
Sum: 42,
Buckets: buckets,
}
point := &metricspb.Point{Timestamp: metricstestutils.Timestamp(tsUnix), Value: &metricspb.Point_DistributionValue{DistributionValue: distrValue}}
point.GetDistributionValue().BucketOptions.GetExplicit()
metricData := consumerdata.MetricsData{
Metrics: []*metricspb.Metric{
metricstestutils.GaugeDist("gauge_distrib", keys, metricstestutils.Timeseries(
tsUnix,
values,
point)),
},
}
_, gotNumDroppedTimeSeries, err := metricDataToSignalFxV2(logger, metricData)
assert.Equal(t, 1, gotNumDroppedTimeSeries)
assert.NoError(t, err)
}

0 comments on commit ab093e2

Please sign in to comment.