-
Notifications
You must be signed in to change notification settings - Fork 826
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
Separate Events API from Logs API #3550
Conversation
Codecov Report
Additional details and impacted files@@ Coverage Diff @@
## main #3550 +/- ##
==========================================
- Coverage 93.90% 92.86% -1.05%
==========================================
Files 255 138 -117
Lines 7763 3264 -4499
Branches 1613 673 -940
==========================================
- Hits 7290 3031 -4259
+ Misses 473 233 -240
|
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 great, thank you for taking the time to split these apart 🙂
Just a few nits + one question 🙂
experimental/packages/api-events/src/types/EventEmitterOptions.ts
Outdated
Show resolved
Hide resolved
experimental/packages/api-events/test/noop-implementations/noop-event-emitter.test.ts
Show resolved
Hide resolved
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.
Some clarifications on event domain.
@dyladan The failing unit tests don't seem to be related to this PR. |
they are not related. its the flaky test mentioned in SIG |
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 specification still lists the event-api as part of the logs specification. Does it worth creating a dedicated package for event-api?
Update: sorry, missed the links. Otherwise LGTM.
Naming bikeshed: EventEmitter is a Node.js built-in API. It would be confusing in JavaScript if the API is named as EventEmitter but is not a Node.js EventEmitter instance.
@legendecas I brought up the I am open to suggestions about a different name. And I would also ask that this discussion does not prevent this PR from being merged. We would like to continue work on the Log and Events SDKs, which are currently blocked by this change. If ok with you, I would suggest that we merge this PR with the EventEmitter name, and continue the discussion in a separate issue (which will probably need to make it into the spec). |
Co-authored-by: Chengzhong Wu <legendecas@gmail.com>
This change separates the Events API into a separate package. This has been discussed in this specs issue, and prototyped in Java here.
This makes it possible to have instrumentation code depend only on the Events API without having to take in the whole Logs API as a dependency. The Logs API can remain reserved for log appenders only (not exposed in instrumentations or user code).
Follow-up work: