10000 last_used_at continues to increment with workspace-usage experiment · Issue #15174 · coder/coder · GitHub
[go: up one dir, main page]

Skip to content
last_used_at continues to increment with workspace-usage experiment #15174
@f0ssel

Description

@f0ssel

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":"member@coder.com","GIT_AUTHOR_NAME":"Regular User","GIT_COMMITTER_EMAIL":"member@coder.com","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":"member@coder.com","GIT_AUTHOR_NAME":"Regular User","GIT_COMMITTER_EMAIL":"member@coder.com","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

Metadata

Metadata

Assignees

Labels

bug riskProne to bugsobservabilityIssues related to observability (metrics, dashboards, alerts, opentelemetry)

Type

No type

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions

    0