-
Notifications
You must be signed in to change notification settings - Fork 865
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
feat: analytics #1068
feat: analytics #1068
Conversation
License: MIT Signed-off-by: Henrique Dias <hacdias@gmail.com>
License: MIT Signed-off-by: Henrique Dias <hacdias@gmail.com>
License: MIT Signed-off-by: Henrique Dias <hacdias@gmail.com>
License: MIT Signed-off-by: Henrique Dias <hacdias@gmail.com>
License: MIT Signed-off-by: Henrique Dias <hacdias@gmail.com>
License: MIT Signed-off-by: Henrique Dias <hacdias@gmail.com>
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 we make "how long was desktop running in the tray" the session, then it becomes hard to determine how long they actually used the application for. I would say "time spent interacting with the app" is a better session duration indicator. We could add events for desktop-only interactions, and it's kinda ok if they happen outside of countly sessions. It would be fun to know how long folks leave ipfs-desktop running, but ultimately it's less valuable info than "do they use it"...
Also it's important to inform the user about what events are tracked. The current impl show the user all the webui events that get logged. We need to keep that accurate as it's there so users trust that we tell them exactly what we tracking.
… webui License: MIT Signed-off-by: Henrique Dias <hacdias@gmail.com>
License: MIT Signed-off-by: Henrique Dias <hacdias@gmail.com>
License: MIT Signed-off-by: Henrique Dias <hacdias@gmail.com>
@olizilla the requested changes were made:
|
License: MIT Signed-off-by: Henrique Dias <hacdias@gmail.com>
License: MIT Signed-off-by: Henrique Dias <hacdias@gmail.com>
License: MIT Signed-off-by: Henrique Dias <hacdias@gmail.com>
License: MIT Signed-off-by: Henrique Dias <hacdias@gmail.com>
@olizilla after we talked, I tried moving all the logic to Web UI side to keep the countly id and such the same so there wouldn't be any problems. Although, that way, since the Web UI sometimes reloads (when the daemon stops and starts) or due to other reasons (user forced reload, we updated the files list), we won't be able to capture all events. Some of them are quite important such as daemon's starting time. Although, I found out we could actually merge the old ID data with the new: ipfs/ipfs-webui@d20980f. Waiting for a review now :) |
This adds Analytics to IPFS Desktop using our Countly setup. This PR, in pair with the one on IPFS Web UI repository, make a seamless integration between both Countly setups: we share the device id and the consents so we know on both sides what we can and can't send.
For this to work, I just created some wrappers around the logging functions to allow to send an event with it. If it has an event (
withAnalytics
), we log the event to Countly.Also, created a
logger.start
function that allows us to measure, log and track time of certain actions, such as starting and stopping the daemon.Please ignore CI failures...