Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
20 changes: 10 additions & 10 deletions obsreport/obsreport_receiver.go
Original file line number Diff line number Diff line change
Expand Up @@ -148,13 +148,13 @@ func WithLongLivedCtx() StartReceiveOption {
// dealing with the same receive operation.
func StartTraceDataReceiveOp(
operationCtx context.Context,
receiver string,
receiverID config.ComponentID,
transport string,
opt ...StartReceiveOption,
) context.Context {
return traceReceiveOp(
operationCtx,
receiver,
receiverID,
transport,
receiveTraceDataOperationSuffix,
opt...)
Expand Down Expand Up @@ -182,13 +182,13 @@ func EndTraceDataReceiveOp(
// dealing with the same receive operation.
func StartLogsReceiveOp(
operationCtx context.Context,
receiver string,
receiverID config.ComponentID,
transport string,
opt ...StartReceiveOption,
) context.Context {
return traceReceiveOp(
operationCtx,
receiver,
receiverID,
transport,
receiverLogsOperationSuffix,
opt...)
Expand Down Expand Up @@ -216,13 +216,13 @@ func EndLogsReceiveOp(
// dealing with the same receive operation.
func StartMetricsReceiveOp(
operationCtx context.Context,
receiver string,
receiverID config.ComponentID,
transport string,
opt ...StartReceiveOption,
) context.Context {
return traceReceiveOp(
operationCtx,
receiver,
receiverID,
transport,
receiverMetricsOperationSuffix,
opt...)
Expand Down Expand Up @@ -251,11 +251,11 @@ func EndMetricsReceiveOp(
// recorded.
func ReceiverContext(
ctx context.Context,
receiver string,
receiverID config.ComponentID,
transport string,
) context.Context {
ctx, _ = tag.New(ctx,
tag.Upsert(tagKeyReceiver, receiver, tag.WithTTL(tag.TTLNoPropagation)),
tag.Upsert(tagKeyReceiver, receiverID.String(), tag.WithTTL(tag.TTLNoPropagation)),
tag.Upsert(tagKeyTransport, transport, tag.WithTTL(tag.TTLNoPropagation)))

return ctx
Expand All @@ -265,7 +265,7 @@ func ReceiverContext(
// the updated context with the created span.
func traceReceiveOp(
receiverCtx context.Context,
receiverName string,
receiverID config.ComponentID,
transport string,
operationSuffix string,
opt ...StartReceiveOption,
Expand All @@ -277,7 +277,7 @@ func traceReceiveOp(

var ctx context.Context
var span *trace.Span
spanName := receiverPrefix + receiverName + operationSuffix
spanName := receiverPrefix + receiverID.String() + operationSuffix
if !opts.LongLivedCtx {
ctx, span = trace.StartSpan(receiverCtx, spanName)
} else {
Expand Down
23 changes: 9 additions & 14 deletions obsreport/obsreport_scraper.go
Original file line number Diff line number Diff line change
Expand Up @@ -62,13 +62,13 @@ var (
// recorded.
func ScraperContext(
ctx context.Context,
receiver string,
scraper string,
receiverID config.ComponentID,
scraper config.ComponentID,
) context.Context {
ctx, _ = tag.New(ctx, tag.Upsert(tagKeyReceiver, receiver, tag.WithTTL(tag.TTLNoPropagation)))
if scraper != "" {
ctx, _ = tag.New(ctx, tag.Upsert(tagKeyScraper, scraper, tag.WithTTL(tag.TTLNoPropagation)))
}
ctx, _ = tag.New(
ctx,
tag.Upsert(tagKeyReceiver, receiverID.String(), tag.WithTTL(tag.TTLNoPropagation)),
tag.Upsert(tagKeyScraper, scraper.String(), tag.WithTTL(tag.TTLNoPropagation)))

return ctx
}
Expand All @@ -78,15 +78,10 @@ func ScraperContext(
// dealing with the same scrape operation.
func StartMetricsScrapeOp(
scraperCtx context.Context,
receiver string,
scraper string,
receiverID config.ComponentID,
scraper config.ComponentID,
) context.Context {
scraperName := receiver
if scraper != "" {
scraperName += "/" + scraper
}

spanName := scraperPrefix + scraperName + scraperMetricsOperationSuffix
spanName := scraperPrefix + receiverID.String() + nameSep + scraper.String() + scraperMetricsOperationSuffix
ctx, _ := trace.StartSpan(scraperCtx, spanName)
return ctx
}
Expand Down
14 changes: 7 additions & 7 deletions obsreport/obsreport_test.go
Original file line number Diff line number Diff line change
Expand Up @@ -36,13 +36,13 @@ import (
)

const (
receiver = "fakeReicever"
scraper = "fakeScraper"
transport = "fakeTransport"
format = "fakeFormat"
)

var (
receiver = config.NewID("fakeReicever")
scraper = config.NewID("fakeScraper")
processor = config.NewID("fakeProcessor")
exporter = config.NewID("fakeExporter")

Expand Down Expand Up @@ -124,7 +124,7 @@ func TestReceiveTraceDataOp(t *testing.T) {

var acceptedSpans, refusedSpans int
for i, span := range spans {
assert.Equal(t, "receiver/"+receiver+"/TraceDataReceived", span.Name)
assert.Equal(t, "receiver/"+receiver.String()+"/TraceDataReceived", span.Name)
switch params[i].err {
case nil:
acceptedSpans += rcvdSpans[i]
Expand Down Expand Up @@ -184,7 +184,7 @@ func TestReceiveLogsOp(t *testing.T) {

var acceptedLogRecords, refusedLogRecords int
for i, span := range spans {
assert.Equal(t, "receiver/"+receiver+"/LogsReceived", span.Name)
assert.Equal(t, "receiver/"+receiver.String()+"/LogsReceived", span.Name)
switch params[i].err {
case nil:
acceptedLogRecords += rcvdLogRecords[i]
Expand Down Expand Up @@ -244,7 +244,7 @@ func TestReceiveMetricsOp(t *testing.T) {

var acceptedMetricPoints, refusedMetricPoints int
for i, span := range spans {
assert.Equal(t, "receiver/"+receiver+"/MetricsReceived", span.Name)
assert.Equal(t, "receiver/"+receiver.String()+"/MetricsReceived", span.Name)
switch params[i].err {
case nil:
acceptedMetricPoints += rcvdMetricPts[i]
Expand Down Expand Up @@ -301,7 +301,7 @@ func TestScrapeMetricsDataOp(t *testing.T) {

var scrapedMetricPoints, erroredMetricPoints int
for i, span := range spans {
assert.Equal(t, "scraper/"+receiver+"/"+scraper+"/MetricsScraped", span.Name)
assert.Equal(t, "scraper/"+receiver.String()+"/"+scraper.String()+"/MetricsScraped", span.Name)
switch errParams[i] {
case nil:
scrapedMetricPoints += scrapedMetricPts[i]
Expand Down Expand Up @@ -523,7 +523,7 @@ func TestReceiveWithLongLivedCtx(t *testing.T) {
assert.Equal(t, trace.LinkTypeParent, link.Type)
assert.Equal(t, parentSpan.SpanContext().TraceID, link.TraceID)
assert.Equal(t, parentSpan.SpanContext().SpanID, link.SpanID)
assert.Equal(t, "receiver/"+receiver+"/TraceDataReceived", span.Name)
assert.Equal(t, "receiver/"+receiver.String()+"/TraceDataReceived", span.Name)
assert.Equal(t, transport, span.Attributes[obsreport.TransportKey])
switch ops[i].err {
case nil:
Expand Down
44 changes: 20 additions & 24 deletions obsreport/obsreporttest/obsreporttest.go
Original file line number Diff line number Diff line change
Expand Up @@ -59,31 +59,31 @@ func SetupRecordedMetricsTest() (func(), error) {
// CheckExporterTraces checks that for the current exported values for trace exporter metrics match given values.
// When this function is called it is required to also call SetupRecordedMetricsTest as first thing.
func CheckExporterTraces(t *testing.T, exporter config.ComponentID, acceptedSpans, droppedSpans int64) {
exporterTags := tagsForExporterView(exporter.String())
exporterTags := tagsForExporterView(exporter)
checkValueForView(t, exporterTags, acceptedSpans, "exporter/sent_spans")
checkValueForView(t, exporterTags, droppedSpans, "exporter/send_failed_spans")
}

// CheckExporterMetrics checks that for the current exported values for metrics exporter metrics match given values.
// When this function is called it is required to also call SetupRecordedMetricsTest as first thing.
func CheckExporterMetrics(t *testing.T, exporter config.ComponentID, acceptedMetricsPoints, droppedMetricsPoints int64) {
exporterTags := tagsForExporterView(exporter.String())
exporterTags := tagsForExporterView(exporter)
checkValueForView(t, exporterTags, acceptedMetricsPoints, "exporter/sent_metric_points")
checkValueForView(t, exporterTags, droppedMetricsPoints, "exporter/send_failed_metric_points")
}

// CheckExporterLogs checks that for the current exported values for logs exporter metrics match given values.
// When this function is called it is required to also call SetupRecordedMetricsTest as first thing.
func CheckExporterLogs(t *testing.T, exporter config.ComponentID, acceptedLogRecords, droppedLogRecords int64) {
exporterTags := tagsForExporterView(exporter.String())
exporterTags := tagsForExporterView(exporter)
checkValueForView(t, exporterTags, acceptedLogRecords, "exporter/sent_log_records")
checkValueForView(t, exporterTags, droppedLogRecords, "exporter/send_failed_log_records")
}

// CheckProcessorTraces checks that for the current exported values for trace exporter metrics match given values.
// When this function is called it is required to also call SetupRecordedMetricsTest as first thing.
func CheckProcessorTraces(t *testing.T, processor config.ComponentID, acceptedSpans, refusedSpans, droppedSpans int64) {
processorTags := tagsForProcessorView(processor.String())
processorTags := tagsForProcessorView(processor)
checkValueForView(t, processorTags, acceptedSpans, "processor/accepted_spans")
checkValueForView(t, processorTags, refusedSpans, "processor/refused_spans")
checkValueForView(t, processorTags, droppedSpans, "processor/dropped_spans")
Expand All @@ -92,7 +92,7 @@ func CheckProcessorTraces(t *testing.T, processor config.ComponentID, acceptedSp
// CheckProcessorMetrics checks that for the current exported values for metrics exporter metrics match given values.
// When this function is called it is required to also call SetupRecordedMetricsTest as first thing.
func CheckProcessorMetrics(t *testing.T, processor config.ComponentID, acceptedMetricPoints, refusedMetricPoints, droppedMetricPoints int64) {
processorTags := tagsForProcessorView(processor.String())
processorTags := tagsForProcessorView(processor)
checkValueForView(t, processorTags, acceptedMetricPoints, "processor/accepted_metric_points")
checkValueForView(t, processorTags, refusedMetricPoints, "processor/refused_metric_points")
checkValueForView(t, processorTags, droppedMetricPoints, "processor/dropped_metric_points")
Expand All @@ -101,39 +101,39 @@ func CheckProcessorMetrics(t *testing.T, processor config.ComponentID, acceptedM
// CheckProcessorLogs checks that for the current exported values for logs exporter metrics match given values.
// When this function is called it is required to also call SetupRecordedMetricsTest as first thing.
func CheckProcessorLogs(t *testing.T, processor config.ComponentID, acceptedLogRecords, refusedLogRecords, droppedLogRecords int64) {
processorTags := tagsForProcessorView(processor.String())
processorTags := tagsForProcessorView(processor)
checkValueForView(t, processorTags, acceptedLogRecords, "processor/accepted_log_records")
checkValueForView(t, processorTags, refusedLogRecords, "processor/refused_log_records")
checkValueForView(t, processorTags, droppedLogRecords, "processor/dropped_log_records")
}

// CheckReceiverTraces checks that for the current exported values for trace receiver metrics match given values.
// When this function is called it is required to also call SetupRecordedMetricsTest as first thing.
func CheckReceiverTraces(t *testing.T, receiver, protocol string, acceptedSpans, droppedSpans int64) {
func CheckReceiverTraces(t *testing.T, receiver config.ComponentID, protocol string, acceptedSpans, droppedSpans int64) {
receiverTags := tagsForReceiverView(receiver, protocol)
checkValueForView(t, receiverTags, acceptedSpans, "receiver/accepted_spans")
checkValueForView(t, receiverTags, droppedSpans, "receiver/refused_spans")
}

// CheckReceiverLogs checks that for the current exported values for logs receiver metrics match given values.
// When this function is called it is required to also call SetupRecordedMetricsTest as first thing.
func CheckReceiverLogs(t *testing.T, receiver, protocol string, acceptedLogRecords, droppedLogRecords int64) {
func CheckReceiverLogs(t *testing.T, receiver config.ComponentID, protocol string, acceptedLogRecords, droppedLogRecords int64) {
receiverTags := tagsForReceiverView(receiver, protocol)
checkValueForView(t, receiverTags, acceptedLogRecords, "receiver/accepted_log_records")
checkValueForView(t, receiverTags, droppedLogRecords, "receiver/refused_log_records")
}

// CheckReceiverMetrics checks that for the current exported values for metrics receiver metrics match given values.
// When this function is called it is required to also call SetupRecordedMetricsTest as first thing.
func CheckReceiverMetrics(t *testing.T, receiver, protocol string, acceptedMetricPoints, droppedMetricPoints int64) {
func CheckReceiverMetrics(t *testing.T, receiver config.ComponentID, protocol string, acceptedMetricPoints, droppedMetricPoints int64) {
receiverTags := tagsForReceiverView(receiver, protocol)
checkValueForView(t, receiverTags, acceptedMetricPoints, "receiver/accepted_metric_points")
checkValueForView(t, receiverTags, droppedMetricPoints, "receiver/refused_metric_points")
}

// CheckScraperMetrics checks that for the current exported values for metrics scraper metrics match given values.
// When this function is called it is required to also call SetupRecordedMetricsTest as first thing.
func CheckScraperMetrics(t *testing.T, receiver, scraper string, scrapedMetricPoints, erroredMetricPoints int64) {
func CheckScraperMetrics(t *testing.T, receiver config.ComponentID, scraper config.ComponentID, scrapedMetricPoints, erroredMetricPoints int64) {
scraperTags := tagsForScraperView(receiver, scraper)
checkValueForView(t, scraperTags, scrapedMetricPoints, "scraper/scraped_metric_points")
checkValueForView(t, scraperTags, erroredMetricPoints, "scraper/errored_metric_points")
Expand Down Expand Up @@ -162,10 +162,10 @@ func checkValueForView(t *testing.T, wantTags []tag.Tag, value int64, vName stri
}

// tagsForReceiverView returns the tags that are needed for the receiver views.
func tagsForReceiverView(receiver, transport string) []tag.Tag {
func tagsForReceiverView(receiver config.ComponentID, transport string) []tag.Tag {
tags := make([]tag.Tag, 0, 2)

tags = append(tags, tag.Tag{Key: receiverTag, Value: receiver})
tags = append(tags, tag.Tag{Key: receiverTag, Value: receiver.String()})
if transport != "" {
tags = append(tags, tag.Tag{Key: transportTag, Value: transport})
}
Expand All @@ -174,28 +174,24 @@ func tagsForReceiverView(receiver, transport string) []tag.Tag {
}

// tagsForScraperView returns the tags that are needed for the scraper views.
func tagsForScraperView(receiver, scraper string) []tag.Tag {
tags := make([]tag.Tag, 0, 2)

tags = append(tags, tag.Tag{Key: receiverTag, Value: receiver})
if scraper != "" {
tags = append(tags, tag.Tag{Key: scraperTag, Value: scraper})
func tagsForScraperView(receiver config.ComponentID, scraper config.ComponentID) []tag.Tag {
return []tag.Tag{
{Key: receiverTag, Value: receiver.String()},
{Key: scraperTag, Value: scraper.String()},
}

return tags
}

// tagsForProcessorView returns the tags that are needed for the processor views.
func tagsForProcessorView(processor string) []tag.Tag {
func tagsForProcessorView(processor config.ComponentID) []tag.Tag {
return []tag.Tag{
{Key: processorTag, Value: processor},
{Key: processorTag, Value: processor.String()},
}
}

// tagsForExporterView returns the tags that are needed for the exporter views.
func tagsForExporterView(exporter string) []tag.Tag {
func tagsForExporterView(exporter config.ComponentID) []tag.Tag {
return []tag.Tag{
{Key: exporterTag, Value: exporter},
{Key: exporterTag, Value: exporter.String()},
}
}

Expand Down
2 changes: 1 addition & 1 deletion obsreport/obsreporttest/obsreporttest_test.go
Original file line number Diff line number Diff line change
Expand Up @@ -28,12 +28,12 @@ import (
)

const (
receiver = "fakeReicever"
transport = "fakeTransport"
format = "fakeFormat"
)

var (
receiver = config.NewID("fakeReicever")
exporter = config.NewID("fakeExporter")
)

Expand Down
20 changes: 10 additions & 10 deletions receiver/hostmetricsreceiver/hostmetrics_receiver_test.go
Original file line number Diff line number Diff line change
Expand Up @@ -215,10 +215,10 @@ func (m *mockFactory) CreateMetricsScraper(context.Context, *zap.Logger, interna
return args.Get(0).(scraperhelper.MetricsScraper), args.Error(1)
}

func (m *mockScraper) Name() string { return "" }
func (m *mockScraper) ID() config.ComponentID { return config.NewID("") }
func (m *mockScraper) Start(context.Context, component.Host) error { return nil }
func (m *mockScraper) Shutdown(context.Context) error { return nil }
func (m *mockScraper) Scrape(context.Context, string) (pdata.MetricSlice, error) {
func (m *mockScraper) Scrape(context.Context, config.ComponentID) (pdata.MetricSlice, error) {
return pdata.NewMetricSlice(), errors.New("err1")
}

Expand All @@ -231,10 +231,10 @@ func (m *mockResourceFactory) CreateResourceMetricsScraper(context.Context, *zap
return args.Get(0).(scraperhelper.ResourceMetricsScraper), args.Error(1)
}

func (m *mockResourceScraper) Name() string { return "" }
func (m *mockResourceScraper) ID() config.ComponentID { return config.NewID("") }
func (m *mockResourceScraper) Start(context.Context, component.Host) error { return nil }
func (m *mockResourceScraper) Shutdown(context.Context) error { return nil }
func (m *mockResourceScraper) Scrape(context.Context, string) (pdata.ResourceMetricsSlice, error) {
func (m *mockResourceScraper) Scrape(context.Context, config.ComponentID) (pdata.ResourceMetricsSlice, error) {
return pdata.NewResourceMetricsSlice(), errors.New("err2")
}

Expand All @@ -243,8 +243,8 @@ func TestGatherMetrics_ScraperKeyConfigError(t *testing.T) {
resourceScraperFactories = map[string]internal.ResourceScraperFactory{}

sink := new(consumertest.MetricsSink)
config := &Config{Scrapers: map[string]internal.Config{"error": &mockConfig{}}}
_, err := NewFactory().CreateMetricsReceiver(context.Background(), creationParams, config, sink)
cfg := &Config{Scrapers: map[string]internal.Config{"error": &mockConfig{}}}
_, err := NewFactory().CreateMetricsReceiver(context.Background(), creationParams, cfg, sink)
require.Error(t, err)
}

Expand All @@ -255,8 +255,8 @@ func TestGatherMetrics_CreateMetricsScraperError(t *testing.T) {
resourceScraperFactories = map[string]internal.ResourceScraperFactory{}

sink := new(consumertest.MetricsSink)
config := &Config{Scrapers: map[string]internal.Config{mockTypeStr: &mockConfig{}}}
_, err := NewFactory().CreateMetricsReceiver(context.Background(), creationParams, config, sink)
cfg := &Config{Scrapers: map[string]internal.Config{mockTypeStr: &mockConfig{}}}
_, err := NewFactory().CreateMetricsReceiver(context.Background(), creationParams, cfg, sink)
require.Error(t, err)
}

Expand All @@ -267,8 +267,8 @@ func TestGatherMetrics_CreateMetricsResourceScraperError(t *testing.T) {
resourceScraperFactories = map[string]internal.ResourceScraperFactory{mockResourceTypeStr: mResourceFactory}

sink := new(consumertest.MetricsSink)
config := &Config{Scrapers: map[string]internal.Config{mockResourceTypeStr: &mockConfig{}}}
_, err := NewFactory().CreateMetricsReceiver(context.Background(), creationParams, config, sink)
cfg := &Config{Scrapers: map[string]internal.Config{mockResourceTypeStr: &mockConfig{}}}
_, err := NewFactory().CreateMetricsReceiver(context.Background(), creationParams, cfg, sink)
require.Error(t, err)
}

Expand Down
Loading