-
Notifications
You must be signed in to change notification settings - Fork 21
Closed
bugsnag/bugsnag-python
#392Labels
Description
The latest version of celery, 5.2.1, raises some exceptions in an unexpected way.
For this particular case, tb was a string of value:
'Traceback (most recent call last):\n File "/app/.heroku/python/lib/python3.9/site-packages/billiard/pool.py", line 366, in workloop\n put((READY, (job, i, result, inqW_fd)))\n File "/app/.heroku/python/lib/python3.9/site-packages/billiard/queues.py", line 366, in put\n self.send_payload(ForkingPickler.dumps(obj))\n File "/app/.heroku/python/lib/python3.9/site-packages/billiard/reduction.py", line 56, in dumps\n cls(buf, protocol).dump(obj)\nbilliard.pool.MaybeEncodingError: Error sending res...'
Stacktrace of error
AttributeError: 'str' object has no attribute 'tb_frame'
File "celery/utils/dispatch/signal.py", line 276, in send
response = receiver(signal=self, sender=sender, **named)
File "scout_apm/celery.py", line 114, in task_failure_callback
ErrorMonitor.send(
File "scout_apm/core/error.py", line 69, in send
for frame in capture_stacktrace(traceback)
File "scout_apm/core/backtrace.py", line 132, in capture_stacktrace
return list(reversed(list(itertools.islice(walker, LIMIT))))
File "scout_apm/core/backtrace.py", line 75, in stacktrace_walker
for frame, lineno in traceback.walk_tb(tb):
File "traceback.py", line 312, in walk_tb
yield tb.tb_frame, tb.tb_lineno