-
Notifications
You must be signed in to change notification settings - Fork 57
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 support for OTLP tracing reporting #34
Conversation
f7307e8
to
c37827b
Compare
#[cfg(feature = "telemetry-server")] | ||
server_fut: Option<TelemetryServerFuture>, | ||
|
||
tele_futures: FuturesUnordered<BoxFuture<'static, BootstrapResult<()>>>, |
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.
if this is always going to have one future, why is this different from server_fut
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.
No, in the upcoming PRs it will be also used to drive exporters.
This allows to get rid of 2 separate functions for telemetry initialisation and allows to drive async functionality other than just the telemetry server.
…with logging settings
095665d
to
67db5f8
Compare
- Use async reporting for traces by using rustracing fork - Scaffold gRPC reporter - Fix defaults for settings - make serde(default) attributes unconditional, otherwise they were not parsed by our macro
9371eba
to
28ac05a
Compare
81b3e54
to
767ae02
Compare
767ae02
to
741bd97
Compare
if ready_res.is_empty() { | ||
Poll::Pending | ||
} else { | ||
Poll::Ready(ready_res.into_iter().collect()) |
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.
Is completing after the first polled future finishes the intended behavior here?
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.
Yes. There are 2 cases where either of those complete:
- TelemetryServer received a graceful shutdown signal. Once it finishes we wrap up all operations, including telemetry reporting
- Any of those error - one of the components of the telemetry system is not functioning anymore, we need to terminate.
It's recommended to review the commits in the PR separately