-
Notifications
You must be signed in to change notification settings - Fork 821
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
chore: v1.0.0 proposal #2468
chore: v1.0.0 proposal #2468
Conversation
Codecov Report
@@ Coverage Diff @@
## main #2468 +/- ##
=======================================
Coverage 93.23% 93.23%
=======================================
Files 137 137
Lines 5042 5042
Branches 1066 1066
=======================================
Hits 4701 4701
Misses 341 341 |
I'm fine with it, at the end of the line that means we'll have to bump major when the metrics api will be merged with the API pkg. Also there were discussing about renaming the exporter collector, do we want to do this before 1.0 ? #2364 |
b5b2f6f
to
0099650
Compare
@open-telemetry/javascript-maintainers @open-telemetry/javascript-approvers I'm thinking we should probably hold back sdk-node as experimental until we can remove its dependence upon experimental and contrib packages. WDYT? |
Just to confirm, |
yes |
e40da37
to
6a7c6fa
Compare
Updated to put sdk-node in experimental which will give us time to asses its dependencies and public interface. |
What do we do about #2364 ? That would be preferable to do it now before 1.0 wdyt ? |
6a7c6fa
to
37ec96d
Compare
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 good to me!
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.
finally 🚀
exporter collector can exports traces and metrics, metrics are experimental, not sure though what we should be doing with this than, Should we leave it, move exporters to experimental or split it etc. or something else ? |
@obecny yeah that was the other issue that Dan called out in the description. Some SIGs like Python and .NET have went ahead and marked their exporters as stable. But we could move them into separate packages with traces in stable and metrics in experimental if we wanted to avoid possible major version bumps. Do you know how much work that would be? |
As |
quite a lot of work tbh |
In Python, we removed the OTLP metrics exporter altogether. The metrics spec has changed so much we decided we would need to reimplement it anyway. However, since JS has separated the metrics and trace api/sdk altogether, it seems reasonable to separate the trace and metric OTLP exporters. |
I agree, Prometheus exporter should stay in experimental.
So it seems like this would require splitting the existing 3 OTLP exporters (
@open-telemetry/javascript-approvers What do you think of the approach and package naming in this proposal? If we're agreed this is something we should do before 1.0.0 I feel like this would be only slightly more work than #2476. |
I would vote for separating tracing and metrics collection for OTLP exporter and put them on different stage as metrics spec has changed so much since then. |
how did you count 9 ? it would be 6 exporters, metrics inherits from tracing this is how it is built the difference is in transport layer and data conversion |
Ah yes that makes sense. I thought for each protocol we would have a "base" exporter, then trace-specific logic would be in a separate package, and metric-specific logic in yet another. So 3 packages * 3 protocols = 9. But if we're leaving the trace logic in the existing exporter and just creating a new package for metric exporters, then that's easier and simpler. We can leave the exporter package names as-is. Do you agree with the naming of I unfortunately don't have time to work on this today, but if anyone else could take it up that'd be awesome. Otherwise maybe myself or @dyladan could have time next week. |
I would like to add that when logs spec will be done, it might be easier to have them as a seperate experimental exporter. Could we maybe let the exporter still be experimental for now while we make the effort to split metrics out ? So we can still GA SDKs (which i believe is the main goal here) |
I like the idea of having a separate exporter package for each signal. Ideally I think the metrics would not depend on the trace exporter, but that's an internal change that can be made after 1.0 |
@aabmass are you volunteering to take on that project? |
@dyladan I'm not sure if you meant to tag me there but yes I can take a stab at this later today. I'll take the approach with 6 total packages (where the metric exporters depend on the trace exporters) unless anyone thinks otherwise. |
I'm not sure what made me tag Aaron oops. I probably meant to tag you :) |
This seems reasonable. As a follow-up we can factor out the shared parts into a base package if that makes sense later. It can be done after 1.0 since I wouldn't expect that to be a breaking change. |
I will refactor this, but I think we should move otlp exporters to experimental package first |
Sorry all, still working on this. I will have something out by later tomorrow. The tricky bit is that due to the repo splitting, we cannot depend directly on the trace/base exporters from the metric exporters after they're moved to experimental. So I've done pretty much all of the work of separating them, but now I still need to verify the metric exporters will work without having to make any breaking changes to the base exporter after releasing it. |
Do you think we could release this as 0.x instead for now? |
Went ahead and opened #2486 to continue discussion on separating exporters. We can leave this PR to discuss 1.0.0 release. |
Per discussion in SIG this is now only blocked on #2490. |
d5fecea
to
7adfb13
Compare
Updated and ready for ✔️ |
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.
🎊
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.
🎉
There are no changes from 0.26.0
Huge thank you to all involved who helped get us this far! 🎉