You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
This is a collection of tasks related to stabilizing our internal tracking of user activity from a workspace. Once completed, the code should ensure that there's a single place to keep track of user activity in order to reduce the chance of bugs where we forget to implement it properly for future features.
Internal APIs
Migrate workspace_builds.deadline to a view and alter existing queries to query that view instead.
Implementation note: we can rename the existing column before deleting it later.
Modify UpdateWorkspaceDeadlineByID → UpdateWorkspaceMaxDeadlineByID and update existing callers
Replace existing usage of ActivityBumpWorkspace with StatsCollector.Collect()
Replace existing usage of UpdateWorkspaceLastUsedAt et al. with StatsCollector.Collect()
Modify metricscache to query AppStats to fetch session counts by IDE (for admin activity bar)
External APIs
Once we update how the internal APIs handle tracking of user activity we must update things like the CLI and jetbrains plugins to be compatible with the new flows. This will ensure users will continue to see accurate data from these external sources.
Modify /usage endpoint to accept a payload and call StatsCollector.Collect(), returning a SessionID if required
Update CLI commands (coder ssh, etc.) to periodically send a payload to /usage
Include an option to skip tracking
Update coder-jetbrains plugin to periodically send payloads to /usage
Ensure that periodic background activity does not send unwanted activity bumps
Release Readiness
Before release we need to make sure that the new code paths are stable and ready for customers to consume. This requires testing and release documentation for how to safely upgrade.
Scaletest new changes
Require cli upgrade in release notes
The text was updated successfully, but these errors were encountered:
This is a collection of tasks related to stabilizing our internal tracking of user activity from a workspace. Once completed, the code should ensure that there's a single place to keep track of user activity in order to reduce the chance of bugs where we forget to implement it properly for future features.
Internal APIs
workspace_builds.deadline
to a view and alter existing queries to query that view instead.UpdateWorkspaceDeadlineByID
→UpdateWorkspaceMaxDeadlineByID
and update existing callersActivityBumpWorkspace
withStatsCollector.Collect()
UpdateWorkspaceLastUsedAt
et al. withStatsCollector.Collect()
metricscache
to query AppStats to fetch session counts by IDE (for admin activity bar)External APIs
Once we update how the internal APIs handle tracking of user activity we must update things like the CLI and jetbrains plugins to be compatible with the new flows. This will ensure users will continue to see accurate data from these external sources.
/usage
endpoint to accept a payload and callStatsCollector.Collect()
, returning aSessionID
if requiredcoder ssh
, etc.) to periodically send a payload to/usage
/usage
Release Readiness
Before release we need to make sure that the new code paths are stable and ready for customers to consume. This requires testing and release documentation for how to safely upgrade.
The text was updated successfully, but these errors were encountered: