Repository navigation
fix(vroom): Add the scheme to the SeaweedFS endpoint in SENTRY_BUCKET_PROFILES - #4573
Conversation
…_PROFILES gocloud v0.46 (getsentry/vroom#721) passes the endpoint to AWS SDK v2 as a full URL, so "seaweedfs:8333" is parsed with "seaweedfs" as the scheme and every vroom read goes to "http:8333" with no host. disable_https only applies to AWS's own endpoints, so drop it in favour of http:// in the URL. Co-Authored-By: Claude <noreply@anthropic.com>
Coverage Results 📊✅ 22 passed | Total: 22 | Pass Rate: 100% | Execution Time: 9m 41s 📊 Comparison with Base Branch
✨ Test counts unchanged from base. All tests are passing successfully. ✅ Patch coverage is 100.00% (no changed executable lines found; target 50%). Coverage diff@@ Coverage Diff @@
## master #4573 +/-##
==========================================
Coverage 95.58% 95.58% —%
==========================================
Files 5 5 —
Tracked lines 339 339 —
Branches 0 0 —
==========================================
Hits 324 324 —
Misses 15 15 —
Partials 0 0 —Generated by Coverage Action |
aldy505
left a comment
There was a problem hiding this comment.
We should specify the aws sdk version explicitly as well
Do you mean adding https://github.com/google/go-cloud/blob/v0.46.0/aws/aws.go#L69 Seems like go-cloud 0.46.0 ignores that, do you mean adding this explicitly? |
Oh welp, I was wrong then. |
Since #4555 and getsentry/vroom#721 (gocloud v0.46), vroom can't read profiles from SeaweedFS: opening a profile or flamegraph returns 500.
gocloud v0.46 hands
endpointto AWS SDK v2 as a full URL. Without a scheme,seaweedfs:8333is parsed withseaweedfsas the scheme, so every read goes tohttp:8333?x-id=GetObjectand fails withno Host in request URLafter 3 retries.disable_httpsonly applies to AWS's own endpoints, not a custom one, so it's dropped in favour ofhttp://in the endpoint. vroom logs nothing about it because it only reports these errors viaSENTRY_DSN.Verified on our dogfood instance: profiles load again with this URL. Ingestion was never affected, which is why the e2e test (it only checks the profile in Snuba) passed; extending it to fetch a profile through vroom can follow separately.
Also updates the external-Kafka patch context line, which still had the pre-#4555 URL; the patch applies cleanly to the new
docker-compose.yml.