Description
Despite clients disconnecting the workspace last_used_at
seems to be incremented by the coderd.workspace_usage_tracker
continually when the workspace-usage
experiment is enabled.
It seems to be getting bumped every 30 seconds, evern with no clients open and no dashboard page loaded.
{"id":"f45e7b85-14cd-419e-bcdd-0d6dfd97351e","created_at":"2024-10-21T15:53:04.74198Z","updated_at":"2024-10-21T15:53:04.74198Z","owner_id":"cdacc3cd-8dde-4609-a441-cfe69b5f911d","owner_name":"member","owner_avatar_url":"","organization_id":"55b292e3-d36b-468b-aab4-c4fe395ac1aa","organization_name":"coder","template_id":"6e25b107-6f72-4483-96d7-13fb46da37ac","template_name":"normal","template_display_name":"normal","template_icon":"/icon/docker.png","template_allow_user_cancel_workspace_jobs":false,"template_active_version_id":"4b26a5d9-9581-4a5f-8047-bcfec148c67f","template_require_active_version":false,"latest_build":{"id":"7dce5fd6-bd4f-43f1-8981-508e442d0a60","created_at":"2024-10-21T15:53:04.754076Z","updated_at":"2024-10-21T15:53:10.817429Z","workspace_id":"f45e7b85-14cd-419e-bcdd-0d6dfd97351e","workspace_name":"smoke-member-1","workspace_owner_id":"cdacc3cd-8dde-4609-a441-cfe69b5f911d","workspace_owner_name":"member","workspace_owner_avatar_url":"","template_version_id":"4b26a5d9-9581-4a5f-8047-bcfec148c67f","template_version_name":"peaceful_diffie6","build_number":1,"transition":"start","initiator_id":"cdacc3cd-8dde-4609-a441-cfe69b5f911d","initiator_name":"member","job":{"id":"8f14304c-d1f8-44c1-bf80-ab6ac0ded409","created_at":"2024-10-21T15:53:04.754076Z","started_at":"2024-10-21T15:53:04.759372Z","completed_at":"2024-10-21T15:53:10.817429Z","status":"succeeded","worker_id":"22babdf9-741c-42c8-a1ca-5d1dbcc4164f","file_id":"65ee2b1e-0335-45b1-968c-69a08f19b783","tags":{"owner":"","scope":"organization"},"queue_position":0,"queue_size":6},"reason":"initiator","resources":[{"id":"89138fbe-07f1-4403-b95e-50480705417d","created_at":"2024-10-21T15:53:10.825404Z","job_id":"8f14304c-d1f8-44c1-bf80-ab6ac0ded409","workspace_transition":"start","type":"docker_container","name":"workspace","hide":false,"icon":"","agents":[{"id":"42dc9508-6ca4-4e04-92a9-2ad84ae499e7","created_at":"2024-10-21T15:53:10.82627Z","updated_at":"2024-10-21T20:10:40.953639Z","first_connected_at":"2024-10-21T15:53:10.952529Z","last_connected_at":"2024-10-21T20:10:40.953636Z","started_at":"2024-10-21T15:53:10.974049Z","ready_at":"2024-10-21T15:53:15.009743Z","status":"connected","lifecycle_state":"ready","name":"main","resource_id":"89138fbe-07f1-4403-b95e-50480705417d","architecture":"amd64","environment_variables":{"GIT_AUTHOR_EMAIL":"[email protected]","GIT_AUTHOR_NAME":"Regular User","GIT_COMMITTER_EMAIL":"[email protected]","GIT_COMMITTER_NAME":"Regular User"},"operating_system":"linux","logs_length":1447,"logs_overflowed":false,"version":"v2.16.0-devel+13f6645ab","api_version":"2.2","apps":[{"id":"cb6dd23e-f1d5-46cf-8d34-a8728f403828","url":"http://localhost:13337/?folder=/home/member","external":false,"slug":"code-server","display_name":"code-server","icon":"/icon/code.svg","subdomain":false,"sharing_level":"owner","healthcheck":{"url":"http://localhost:13337/healthz","interval":5,"threshold":6},"health":"healthy","hidden":false}],"latency":{"Coder Embedded Relay":{"preferred":true,"latency_ms":0.29588200000000003}},"connection_timeout_seconds":120,"troubleshooting_url":"https://coder.com/docs/templates/troubleshooting","subsystems":[],"health":{"healthy":true},"display_apps":["vscode","ssh_helper","port_forwarding_helper","web_terminal"],"log_sources":[{"workspace_agent_id":"42dc9508-6ca4-4e04-92a9-2ad84ae499e7","id":"fd1457b6-5f2e-4bc9-8c59-278081611f09","created_at":"2024-10-21T15:53:10.828368Z","display_name":"Startup Script","icon":"/emojis/25b6.png"}],"scripts":[{"id":"5937c14f-10bc-461f-8127-b5620fd26ecb","log_source_id":"fd1457b6-5f2e-4bc9-8c59-278081611f09","log_path":"coder-startup-script.log","script":"set -e\n\n# Prepare user home with default files on first start.\nif [ ! -f ~/.init_done ]; then\n cp -rT /etc/skel ~\n touch ~/.init_done\nfi\n\n# Install the latest code-server.\n# Append \"--version x.x.x\" to install a specific version of code-server.\ncurl -fsSL https://code-server.dev/install.sh | sh -s -- --method=standalone --prefix=/tmp/code-server\n\n# Start code-server in the background.\n/tmp/code-server/bin/code-server --auth none --port 13337 \u003e/tmp/code-server.log 2\u003e\u00261 \u0026\n","cron":"","run_on_start":true,"run_on_stop":false,"start_blocks_login":false,"timeout":0,"display_name":"Startup Script"}],"startup_script_behavior":"non-blocking"}],"daily_cost":0},{"id":"b853ae0d-8efe-432a-b59e-921dabec17a0","created_at":"2024-10-21T15:53:10.830574Z","job_id":"8f14304c-d1f8-44c1-bf80-ab6ac0ded409","workspace_transition":"start","type":"docker_volume","name":"home_volume","hide":false,"icon":"","daily_cost":0},{"id":"62d32389-28ff-4710-a2e2-d55622ad8fd6","created_at":"2024-10-21T15:53:10.830079Z","job_id":"8f14304c-d1f8-44c1-bf80-ab6ac0ded409","workspace_transition":"start","type":"docker_image","name":"main","hide":false,"icon":"","daily_cost":0}],"deadline":"2024-10-22T15:53:10.817429Z","max_deadline":"2024-10-27T00:00:00Z","status":"running","daily_cost":0},"outdated":false,"name":"smoke-member-1","ttl_ms":86400000,"last_used_at":"2024-10-21T20:10:40.991848Z","deleting_at":null,"dormant_at":null,"health":{"healthy":true,"failing_agents":[]},"automatic_updates":"never","allow_renames":false,"favorite":false}
{"id":"f45e7b85-14cd-419e-bcdd-0d6dfd97351e","created_at":"2024-10-21T15:53:04.74198Z","updated_at":"2024-10-21T15:53:04.74198Z","owner_id":"cdacc3cd-8dde-4609-a441-cfe69b5f911d","owner_name":"member","owner_avatar_url":"","organization_id":"55b292e3-d36b-468b-aab4-c4fe395ac1aa","organization_name":"coder","template_id":"6e25b107-6f72-4483-96d7-13fb46da37ac","template_name":"normal","template_display_name":"normal","template_icon":"/icon/docker.png","template_allow_user_cancel_workspace_jobs":false,"template_active_version_id":"4b26a5d9-9581-4a5f-8047-bcfec148c67f","template_require_active_version":false,"latest_build":{"id":"7dce5fd6-bd4f-43f1-8981-508e442d0a60","created_at":"2024-10-21T15:53:04.754076Z","updated_at":"2024-10-21T15:53:10.817429Z","workspace_id":"f45e7b85-14cd-419e-bcdd-0d6dfd97351e","workspace_name":"smoke-member-1","workspace_owner_id":"cdacc3cd-8dde-4609-a441-cfe69b5f911d","workspace_owner_name":"member","workspace_owner_avatar_url":"","template_version_id":"4b26a5d9-9581-4a5f-8047-bcfec148c67f","template_version_name":"peaceful_diffie6","build_number":1,"transition":"start","initiator_id":"cdacc3cd-8dde-4609-a441-cfe69b5f911d","initiator_name":"member","job":{"id":"8f14304c-d1f8-44c1-bf80-ab6ac0ded409","created_at":"2024-10-21T15:53:04.754076Z","started_at":"2024-10-21T15:53:04.759372Z","completed_at":"2024-10-21T15:53:10.817429Z","status":"succeeded","worker_id":"22babdf9-741c-42c8-a1ca-5d1dbcc4164f","file_id":"65ee2b1e-0335-45b1-968c-69a08f19b783","tags":{"owner":"","scope":"organization"},"queue_position":0,"queue_size":6},"reason":"initiator","resources":[{"id":"89138fbe-07f1-4403-b95e-50480705417d","created_at":"2024-10-21T15:53:10.825404Z","job_id":"8f14304c-d1f8-44c1-bf80-ab6ac0ded409","workspace_transition":"start","type":"docker_container","name":"workspace","hide":false,"icon":"","agents":[{"id":"42dc9508-6ca4-4e04-92a9-2ad84ae499e7","created_at":"2024-10-21T15:53:10.82627Z","updated_at":"2024-10-21T20:11:25.954151Z","first_connected_at":"2024-10-21T15:53:10.952529Z","last_connected_at":"2024-10-21T20:11:25.954144Z","started_at":"2024-10-21T15:53:10.974049Z","ready_at":"2024-10-21T15:53:15.009743Z","status":"connected","lifecycle_state":"ready","name":"main","resource_id":"89138fbe-07f1-4403-b95e-50480705417d","architecture":"amd64","environment_variables":{"GIT_AUTHOR_EMAIL":"[email protected]","GIT_AUTHOR_NAME":"Regular User","GIT_COMMITTER_EMAIL":"[email protected]","GIT_COMMITTER_NAME":"Regular User"},"operating_system":"linux","logs_length":1447,"logs_overflowed":false,"version":"v2.16.0-devel+13f6645ab","api_version":"2.2","apps":[{"id":"cb6dd23e-f1d5-46cf-8d34-a8728f403828","url":"http://localhost:13337/?folder=/home/member","external":false,"slug":"code-server","display_name":"code-server","icon":"/icon/code.svg","subdomain":false,"sharing_level":"owner","healthcheck":{"url":"http://localhost:13337/healthz","interval":5,"threshold":6},"health":"healthy","hidden":false}],"latency":{"Coder Embedded Relay":{"preferred":true,"latency_ms":0.29588200000000003}},"connection_timeout_seconds":120,"troubleshooting_url":"https://coder.com/docs/templates/troubleshooting","subsystems":[],"health":{"healthy":true},"display_apps":["vscode","ssh_helper","port_forwarding_helper","web_terminal"],"log_sources":[{"workspace_agent_id":"42dc9508-6ca4-4e04-92a9-2ad84ae499e7","id":"fd1457b6-5f2e-4bc9-8c59-278081611f09","created_at":"2024-10-21T15:53:10.828368Z","display_name":"Startup Script","icon":"/emojis/25b6.png"}],"scripts":[{"id":"5937c14f-10bc-461f-8127-b5620fd26ecb","log_source_id":"fd1457b6-5f2e-4bc9-8c59-278081611f09","log_path":"coder-startup-script.log","script":"set -e\n\n# Prepare user home with default files on first start.\nif [ ! -f ~/.init_done ]; then\n cp -rT /etc/skel ~\n touch ~/.init_done\nfi\n\n# Install the latest code-server.\n# Append \"--version x.x.x\" to install a specific version of code-server.\ncurl -fsSL https://code-server.dev/install.sh | sh -s -- --method=standalone --prefix=/tmp/code-server\n\n# Start code-server in the background.\n/tmp/code-server/bin/code-server --auth none --port 13337 \u003e/tmp/code-server.log 2\u003e\u00261 \u0026\n","cron":"","run_on_start":true,"run_on_stop":false,"start_blocks_login":false,"timeout":0,"display_name":"Startup Script"}],"startup_script_behavior":"non-blocking"}],"daily_cost":0},{"id":"b853ae0d-8efe-432a-b59e-921dabec17a0","created_at":"2024-10-21T15:53:10.830574Z","job_id":"8f14304c-d1f8-44c1-bf80-ab6ac0ded409","workspace_transition":"start","type":"docker_volume","name":"home_volume","hide":false,"icon":"","daily_cost":0},{"id":"62d32389-28ff-4710-a2e2-d55622ad8fd6","created_at":"2024-10-21T15:53:10.830079Z","job_id":"8f14304c-d1f8-44c1-bf80-ab6ac0ded409","workspace_transition":"start","type":"docker_image","name":"main","hide":false,"icon":"","daily_cost":0}],"deadline":"2024-10-22T15:53:10.817429Z","max_deadline":"2024-10-27T00:00:00Z","status":"running","daily_cost":0},"outdated":false,"name":"smoke-member-1","ttl_ms":86400000,"last_used_at":"2024-10-21T20:11:26.337506Z","deleting_at":null,"dormant_at":null,"health":{"healthy":true,"failing_agents":[]},"automatic_updates":"never","allow_renames":false,"favorite":false}
I saw that the workspace usage tracker was bumping workspaces that I kept the web terminal open. When closing the terminals I stopped seeing the logs from this loop, so I think it's coming from somewhere else.
[API] 2024-10-21 19:56:23.753 [info] coderd.workspace_usage_tracker: updated workspaces last_used_at count=1 now="2024-10-21T19:56:23.751633165Z"
[API] 2024-10-21 19:57:23.752 [info] coderd.workspace_usage_tracker: updated workspaces last_used_at count=2 now="2024-10-21T19:57:23.751339347Z"
[API] 2024-10-21 19:58:23.753 [info] coderd.workspace_usage_tracker: updated workspaces last_used_at count=2 now="2024-10-21T19:58:23.751286152Z"
[API] 2024-10-21 19:59:23.752 [info] coderd.workspace_usage_tracker: updated workspaces last_used_at count=2 now="2024-10-21T19:59:23.751621646Z"
[API] 2024-10-21 19:59:23.967 [info] dbpurge: purged old database entries duration=6.848109ms
[API] 2024-10-21 20:00:23.753 [info] coderd.workspace_usage_tracker: updated workspaces last_used_at count=2 now="2024-10-21T20:00:23.751634041Z"
[API] 2024-10-21 20:01:23.752 [info] coderd.workspace_usage_tracker: updated workspaces last_used_at count=2 now="2024-10-21T20:01:23.751447579Z"
[API] 2024-10-21 20:02:23.753 [info] coderd.workspace_usage_tracker: updated workspaces last_used_at count=2 now="2024-10-21T20:02:23.751516781Z"
[API] 2024-10-21 20:03:23.752 [info] coderd.workspace_usage_tracker: updated workspaces last_used_at count=2 now="2024-10-21T20:03:23.751324097Z"
[API] 2024-10-21 20:04:23.752 [info] coderd.workspace_usage_tracker: updated workspaces last_used_at count=2 now="2024-10-21T20:04:23.751106746Z"
[API] 2024-10-21 20:04:23.815 [info] notifications.report_generator: report generator finished duration=1.036513ms
[API] 2024-10-21 20:05:23.752 [info] coderd.workspace_usage_tracker: updated workspaces last_used_at count=1 now="2024-10-21T20:05:23.751598063Z"
[API] 2024-10-21 20:09:23.976 [info] dbpurge: purged old database entries duration=7.611437ms