def failed_jobs(self): jobs = [] for job in failure.all(self.resq, self._start, self._start + 20): backtrace = job['backtrace'] if isinstance(backtrace, list): backtrace = '\n'.join(backtrace) item = job item['failed_at'] = job['failed_at'] item['worker_url'] = '/workers/%s/' % job['worker'] item['payload_args'] = str(job['payload']['args'])[:1024] item['payload_class'] = job['payload']['class'] item['traceback'] = backtrace jobs.append(item) return jobs
def retry_failed(request, number=5000): failures = failure.all(HOST, 0, number) for f in failures: j = b64decode(f["redis_value"]) failure.retry(HOST, f["queue"], j) raise Redirect("/failed/")