Skip to content

High performance impact of server.trackEvent -- let's re-evaluate when it gets called #8375

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

Closed
3 tasks
jankeromnes opened this issue Feb 22, 2022 · 3 comments
Closed
3 tasks
Labels
aspect: analytics Anything related to analytics aspect: performance anything related to performance component: server editor: code (browser) editor: jetbrains meta: stale This issue/PR is stale and will be closed soon team: IDE team: webapp Issue belongs to the WebApp team

Comments

@jankeromnes
Copy link
Contributor

jankeromnes commented Feb 22, 2022

Bug description

The API method server.trackEvent() is being called too frequently, putting excessive load on our servers.

It would be good to:

  • find out which events are tracked the most frequently
  • ... re-evaluate whether they're still useful, or if we can stop tracking them
  • ... if they're still useful, see if we can send them to our analytics backend (segment) directly instead of routing them through server

server.trackEvent() seems to be called most often by the dashboard and by the IDE backends (both VS Code and JetBrains).


From Slack (internal):

trackEvent is by far our most called API method (even beating getWorkspace - and has 2x the callrate of sendHeartbeat 😬 )

It puts considerable load on our server instances.

From Grafana (internal):

Screenshot 2022-02-22 at 09 20 49

Steps to reproduce

  1. Look at the API call rates in Grafana

Workspace affected

No response

Expected behavior

No response

Example repository

No response

Anything else?

No response

@jankeromnes jankeromnes added component: server aspect: performance anything related to performance aspect: analytics Anything related to analytics team: webapp Issue belongs to the WebApp team team: IDE labels Feb 22, 2022
@AlexTugarev
Copy link
Member

I've created a draft (#8388) it doesn't aim to solve this issue entirely, but maybe it already reduces the load significantly enough.

@JanKoehnlein
Copy link
Contributor

@akosyakov was concerned about rate-limits when we send data to segment directly. I don't think 60M events in 10min are a problem yet.

@stale
Copy link

stale bot commented Jun 12, 2022

This issue has been automatically marked as stale because it has not had recent activity. It will be closed if no further activity occurs. Thank you for your contributions.

@stale stale bot added the meta: stale This issue/PR is stale and will be closed soon label Jun 12, 2022
@stale stale bot closed this as completed Jun 23, 2022
@stale stale bot moved this to Done in 🍎 WebApp Team Jun 23, 2022
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
aspect: analytics Anything related to analytics aspect: performance anything related to performance component: server editor: code (browser) editor: jetbrains meta: stale This issue/PR is stale and will be closed soon team: IDE team: webapp Issue belongs to the WebApp team
Projects
Archived in project
Development

No branches or pull requests

4 participants