-
-
Notifications
You must be signed in to change notification settings - Fork 756
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
Event logging client for (Modern) Event Platform #3648
Conversation
Tabling it for now. It may be added at a later time once we fully figure out how it should work. That discussion is taking place in Phab:T256165
Just wanted to note that we (Product Infrastructure Data team) decided to put the stream cc-ing feature on the back-burner, as there are still some unresolved questions around how it should really work (implicit mapping as was implemented here or explicit mapping as suggested in T256169#6254835), and we didn't want this feature to be out on iOS from the get-go and potentially never on MediaWiki. All deliberation will happen in T256165. |
still needs testing & cleanup
@bearloga PR has been updated with |
WMF Framework/Event Platform Client/EventPlatformClientLibrary.swift
Outdated
Show resolved
Hide resolved
Note to self: depending on the outcome of the discussion taking place in the identifiers fragment patch (https://gerrit.wikimedia.org/r/c/schemas/event/secondary/+/615559/3/jsonschema/fragment/analytics/identifiers/current.yaml#22), |
See `mw.user.generateRandomSessionId()` (mediawiki.user.js in MediaWiki Core)
- rename identifier fields (device_id => app_install_id, session_id => app_session_id) to be consistent with current proposal of identifiers schema fragments - add constraint to stream config URI (will help conserve bandwidth)
@joewalsh Thanks for fixing the tests and making those updates! Status update: We're getting closer to being able to create the pilot schema. There was a lot of discussion and iteration on https://gerrit.wikimedia.org/r/c/schemas/event/secondary/+/615559 and we've arrived at a version we're all satisfied with, so that'll be merged tomorrow (Friday) and I'll probably have pilot schema + pilot instrument up for review by EOD/EOW. Exciting!!! |
Also removed EPC's loggers (pre-filled log() generators) because they turned out to be not useful in actual application. https://phabricator.wikimedia.org/T260382
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.
Looking great overall! I did my review in the form of proposed changes via a PR on this PR. The review comments/questions are in that PR: #3682
…a-ios into event-platform-client
…a-ios into codable_epc
…ad, fix timestamp format
…ined in the same place as the structure of the Event
… conforming to the schema
I have been reviewing this as a part of the refactor PR and from my perspective these are ready to merge into |
From the meeting: We decided to move forward with this PR once #3682 is merged into it |
Update Event Platform Client library to utilize Codable and concrete types where possible, fix minor issues
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.
🎉 🎊 Thanks everyone for their hard work on this! Very excited to get this in.
Fixes Phabricator ticket: T228180
Notes
This pull request (a re-do of #3603) adds the iOS version of the Event Platform Client (EPC-iOS) for integration with the modern Event Platform. EPC is an effort to unify algorithms, identifiers, and behaviors across MediaWiki, iOS, and Android.
This initial release supports:
For additional background information on instrumentation within the Modern Event Platform, please refer to this page.
Next steps
StorageManager
andNetworkManager
to make EPC operationalEPC.shared
singleton (was temporarily changed until storage & network managers are implemented)/analytics/test/1.0.0
test.instrumentation
andtest.instrumentation.sampled
event.test_instrumentation
)/analytics/mobile_apps/ios_edit_history_compare
)ios.edit_history_compare
)[]
instead of{}
(T259917)configURI
changed from fake endpoint at pai-test to production endpoint at meta wikiFuture release may support: