Two unrelated production warnings from the same log window: WeatherFetchWorker raised Postgrex 21000 cardinality_violation on ASOS upserts when IEM returned two METAR records for the same timestamp (routine + special at the same minute). Dedupe by (station_id, observed_at) in upsert_surface_observations, keeping the last occurrence since IEM's ordering is chronological. SwpcClient.fetch_xrays warned with the full truncated response body (~650 KB of GOES X-ray JSON) dumped into the log aggregator whenever SWPC's CDN cut the response mid-stream. Intercept Jason.DecodeError in fetch_and_parse and format it short: keep the byte position and an 80-char preview, drop the rest. |
||
|---|---|---|
| .. | ||
| fixtures | ||
| microwaveprop | ||
| microwaveprop_web | ||
| mix/tasks | ||
| support | ||
| test_helper.exs | ||