-
Notifications
You must be signed in to change notification settings - Fork 1.2k
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
[NT-1741][NT-1743][NT-1744] Adding Segment SDK and deprecating Koala #1367
Conversation
…ment enum to match.
Generated by 🚫 Danger |
Codecov Report
@@ Coverage Diff @@
## master #1367 +/- ##
==========================================
- Coverage 86.12% 85.83% -0.29%
==========================================
Files 1099 1100 +1
Lines 97537 95932 -1605
==========================================
- Hits 84005 82348 -1657
- Misses 13532 13584 +52
Continue to review full report at Codecov.
|
@@ -102,21 +102,21 @@ internal final class DiscoveryFiltersViewModelTests: TestCase { | |||
|
|||
XCTAssertEqual( | |||
[], | |||
self.trackingClient.events | |||
self.dataLakeTrackingClient.events |
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.
Should we keep this as tracking client since we sending events to segment and not just the data lake?
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.
So internally trackingClient used to refer to Koala specifically. That client was deleted and now we only have two:
- dataLakeTrackingClient` and
- segmentClient
The data lake and segment tracking clients are technically tracking the same events throughout the app. Should I add an assert for the segmentClient wherever im doing so for the dataLakeClient?
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.
We should prepare for a world where we no longer have the datalake client. When the integration is 100% we will transition to use segment. I would recommend to test against the segment client. If its better to do that in another PR then that is also good with 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.
Just pushed up a large commit with segmentClient
tests written wherever there are dataLakeClient
assertions.
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! Thanks Hari!
📲 What
Analytics at Kickstarter, prior to this PR, entailed the use of two internal clients. Both
Koala
and ourDataLake
clients send events to destinations our Insights team can digest. There are a couple of different things happening in this PR that are all closely related to one another. First, we are adding another dependency that will become our new go-to analytics tool.Segment
will be added as a client while we simultaneously deprecateKoala
. Furthermore, we are getting rid of theKoala
namespace entirely and moving forward withKSRAnalytics
. To summarize, we are:Koala
Segment
and implementing its basic functionalityKoala
namespace🤔 Why
Kickstarter is moving forward with
Segment
as our primary analytics tool and this involves not only removingKoala
but also incrementally adding functionality that sends useful data toSegment
.🛠 How
Segment
provides an SDK with handy methods, which we implement in here. We also have some events our Insights team has approved and removed everything else.