[traceback] UnicodeDecodeError: 'utf-8' codec can't decode byte ...
Categories
(Socorro :: Antenna, defect, P1)
Tracking
(Not tracked)
People
(Reporter: willkg, Assigned: willkg)
Details
Attachments
(1 file)
Sentry: https://sentry.prod.mozaws.net/operations/socorro-new-prod/issues/7361926/
Traceback:
UnicodeDecodeError: 'utf-8' codec can't decode byte 0x83 in position 7637: invalid start byte
File "raven/middleware.py", line 20, in common_exception_handling
yield
File "raven/middleware.py", line 100, in __call__
iterable = self.application(environ, start_response)
File "falcon/api.py", line 244, in __call__
responder(req, resp, **params)
File "markus/main.py", line 489, in _timer_decorator
return fun(*args, **kwargs)
File "antenna/breakpad_resource.py", line 405, in on_post
raw_crash, dumps = self.extract_payload(req)
File "antenna/breakpad_resource.py", line 320, in extract_payload
raw_crash = json.loads(fs_item.value)
File "json/__init__.py", line 343, in loads
s = s.decode(detect_encoding(s), 'surrogatepass')
A while back, the crash reporter changed and it sends annotations in a single JSON-encoded value. In bug 1614985, I added some handling for JsonDecodeError
. We need to add handling for this, too.
Relatedly, now that annotations are all in one big field and we have an "all-or-nothing" situation decoding them, we need to keep an eye on the bad_json
rejection reason and if it spikes, maybe we need a different way of dealing with these. Maybe putting them in a "can't process" queue so we have them to look at later.
Assignee | ||
Comment 2•5 years ago
|
||
Making this a P1 because it's a bug in crash report collection. Putting this in my queue to fix.
Assignee | ||
Comment 3•5 years ago
|
||
Making this a P1 because it's a b
Assignee | ||
Comment 4•5 years ago
|
||
Assignee | ||
Comment 5•5 years ago
|
||
Assignee | ||
Comment 6•5 years ago
|
||
This was deployed to prod in bug #1661072. Marking as FIXED.
Description
•