Open bogdandrutu opened 3 days ago
Sounds good to me. We can remove exportertest.NewNopFactory
@bogdandrutu @dmitryax I have created https://github.com/open-telemetry/opentelemetry-collector/pull/11381
Should we also create nopprocessor
instead of https://pkg.go.dev/go.opentelemetry.io/collector/processor@v0.111.0/processortest#NewNopFactory?
Can I ask a different question. Is the nop exporter/processor really useful as a standalone component? Can I get some arguments why we need that?
I believe @evan-bradley worked on this primarily for OpAMP, the processor would not be useful for that use case but consistency is a relevant issue
Why is the exporter than. I 100% agree with you for consistency, but still not seeing usefulness for exporter either.
The exporter has two uses that I'm aware of:
The original issue may also provide some context: https://github.com/open-telemetry/opentelemetry-collector/issues/7316.
It allows us to start the Collector only running extensions. This is useful for the bootstrapping process done by the OpAMP Supervisor.
For this an alternative is very simple to allow no pipelines, but write an warning.
It can be used for load testing a live Collector if the focus is a receiver/processor, since the exporter will not have any overhead.
Interesting.
The original issue may also provide some context: https://github.com/open-telemetry/opentelemetry-collector/issues/7316.
The reason for having nop receiver is wrong, because we made the processor a connector for spanmetricsprocessor
Overall very few reasons in my opinion, but decision was made and we definitely want to continue with this.
Different question: Should be nop in the distributions we produce?
These 2 are exactly the same. We should keep only one.
cc @open-telemetry/collector-approvers