-
Notifications
You must be signed in to change notification settings - Fork 2.5k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Add all-in-one OTEL component #2262
Add all-in-one OTEL component #2262
Conversation
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Interim review - will continue after current call.
jaeger := factories.Receivers["jaeger"].CreateDefaultConfig().(*jaegerreceiver.Config) | ||
if jaeger.Protocols == nil { | ||
jaeger.Protocols = map[string]*receiver.SecureReceiverSettings{} | ||
func createReceivers(component ComponentType, zipkinHostPort string, factories config.Factories) configmodels.Receivers { |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
This could be func (c ComponentSettings) createReceivers()
to avoid passing params? Same for createExporters
.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I have done this on purpose - be explicit on the required API contract.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
The public API is easy to use. I like to keep the internal APIs clear in terms of the required arguments.
}, | ||
}, | ||
}, | ||
}, | ||
{ | ||
args: []string{ | ||
"--processor.jaeger-binary.server-host-port=host:1", |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Looks like this test has been removed? I think this is still required.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
The code is fully covered in this class. The same test is in jaeger_receiver_test.go
.
"go.uber.org/zap" | ||
|
||
"github.com/jaegertracing/jaeger/cmd/opentelemetry-collector/app" | ||
"github.com/jaegertracing/jaeger/cmd/opentelemetry-collector/app/exporter/cassandra" | ||
"github.com/jaegertracing/jaeger/cmd/opentelemetry-collector/app/exporter/elasticsearch" | ||
"github.com/jaegertracing/jaeger/cmd/opentelemetry-collector/app/exporter/grpcplugin" | ||
"github.com/jaegertracing/jaeger/cmd/opentelemetry-collector/app/exporter/kafka" |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Would be worth adding kafka exporter in one of the tests, just for coverage.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
It's already there but was using a string, I will change it to use the constant.
cmd/opentelemetry-collector/app/exporter/elasticsearch/config_test.go
Outdated
Show resolved
Hide resolved
cmd/opentelemetry-collector/app/exporter/elasticsearch/factory.go
Outdated
Show resolved
Hide resolved
Signed-off-by: Pavol Loffay <ploffay@redhat.com>
c6f6cf4
to
6d4b426
Compare
Signed-off-by: Pavol Loffay <ploffay@redhat.com>
Signed-off-by: Pavol Loffay <ploffay@redhat.com>
Signed-off-by: Pavol Loffay <ploffay@redhat.com>
Signed-off-by: Pavol Loffay <ploffay@redhat.com>
@objectiser I have removed the archive storage config from exporters. It looks cleaner now. |
It should be ready for another review. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
A couple of comments - but looks like an issue in CI.
} | ||
return f, nil | ||
case "memory": | ||
return memory.GetFactory(), nil |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Why not badger, grpc_plugin?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
badger hasn't been implemented yet. I will add the grpc-plugin
.
Signed-off-by: Pavol Loffay <ploffay@redhat.com>
Signed-off-by: Pavol Loffay <ploffay@redhat.com>
Codecov Report
@@ Coverage Diff @@
## master #2262 +/- ##
==========================================
+ Coverage 96.14% 96.17% +0.02%
==========================================
Files 219 219
Lines 10658 10686 +28
==========================================
+ Hits 10247 10277 +30
+ Misses 354 353 -1
+ Partials 57 56 -1
Continue to review full report at Codecov.
|
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
LGTM - once CI passed. Maybe get Yuri to check this one?
Signed-off-by: Pavol Loffay <ploffay@redhat.com>
Signed-off-by: Pavol Loffay <ploffay@redhat.com>
The last fixes building OTEL all-in-one image and runs integration test for it. I will merge on green. |
Is there any documentation regarding this Docker image? In particular, which ports I need. The getting started guide seems to cover the non-open telemetry version https://www.jaegertracing.io/docs/1.21/getting-started/. |
@RehanSaeed The information is contained in this section: https://www.jaegertracing.io/docs/1.21/opentelemetry/ |
Resolves #2258
Resolves #2159
Add all-in-one based on OpenTelemetry collector
Notable changes:
jaeger_memory
Follow up issues/PR: