Excon::Error::BadRequest: Expected(200) <=> Actual(400 Bad Request) excon.error.response :body => "<?xml version=\"1.0\"
Service
cupixworks-api
Occurrences
79
Status
Dismissed
Confidence
85%
Actionability
44%
Cluster ID
ef652994-465a-4157-b08a-c756d7e34d16
First Seen
2024-09-30 07:08 UTC
Last Seen
2026-08-05 01:47 UTC
Actions
현재 상태 dismissed 에서는 실행할 액션이 없습니다.
Excon::Error::BadRequest: Expected(200) <=> Actual(400 Bad Request) excon.error.response :body => "<?xml version="1.0"
What Happened#
Api::V1::CapturesController#update 에서 thumbnails= 파라미터를 처리할 때 CarrierWave 가 S3 로 썸네일을 업로드하는데, 이 PUT 요청이 us-east-1 리전으로 SigV4 서명되어 us-west-2 에 있는 cupix-tesla-static 버킷이 400 AuthorizationHeaderMalformed 로 거부한다. 최근 (2026-08-03 ~ 08-04) 로그·스팬에서도 동일하게 재현되며, us-west-2 production 에서 30개 이상의 서로 다른 capture 에 대해 발생하는 systematic 한 설정 결함이다.
Quick Facts#
| Field | Value |
|---|---|
| exception.class | Excon::Error::BadRequest |
| exception.message | Expected(200) <=> Actual(400 Bad Request) / S3 AuthorizationHeaderMalformed (region 'us-east-1' is wrong; expecting 'us-west-2') |
| top_frame | carrierwave/storage/fog.rb:118 cache! → app/concerns/parameter.rb:21 |
| runtime | Ruby 3.3.0, Rails 7.2.2, carrierwave 2.2.0, fog-aws 3.19.0, excon 0.100.0 |
| env | production, region us-west-2, tenant cupix |
| service (APM) | cupixworks-excon (Datadog excon instrumentation span, 실제 앱은 tesla / cupixworks-api) |
Affected Teams#
| Team / Domain | Error Count | Impact |
|---|---|---|
| cupixworks-api (tesla) — Capture 썸네일 업로드 | now-14d 기준 155 error spans (30+ distinct capture) | PATCH /api/v1/captures/{id} 에 thumbnails 를 포함할 때 썸네일 S3 캐시 저장 실패 |
Timeline#
- 2024-09-30 16:08 KST — 최초 발생 (first_seen).
- 2026-07-22 ~ 2026-08-04 KST — retention window 내 지속 발생 (일 5~35건),
us-west-2production 다수 tenant capture. - 2026-08-04 08:00 KST — 최근 발생 (last_seen). Representative Error 와 동일 메시지·경로 재현 확인.
Scoring#
Confidence 85% · Actionability 44%
Confidence#
| Dimension | Score | Detail |
|---|---|---|
| Evidence completeness | 5/5 | 24 code refs, 5 log queries |
| Code path explicitness | 3/3 | 24 file:line refs |
| Log evidence | 3/3 | section, query, pattern |
| RCA structure | 3/3 | 3/3 sections |
| Revision history | 0/3 | 0 revision(s) |
| Agent execution | 3/3 | success |
Actionability#
| Dimension | Score | Detail |
|---|---|---|
| Fix complexity | 5/5 | trivial |
| Affected files | 1/5 | 30 file(s) |
| Single repo | 1/3 | 3 service(s) |
| Immediate actions | 0/3 | absent |
| Testability | 0/3 | no test info |
| External dependency | 1/3 | external deps found |
| Data migration | 3/3 | no migration |