title: Celery Exception Handling
body: <p>Suppose i have this task definition:</p>
  
  <pre><code>def some_other_foo(input)
  raise Exception('This is not handled!')
  return input
  
  @app.task(
    bind=True,
    max_retries=5,
    soft_time_limit=20)
  def some_foo(self, someInput={}):
     response=""
     try:
       response = some_other_foo(someInput)
     except Exception as exc:
       self.retry(countdown=5, exc=exc)
       response="error"
   return response
  </code></pre>
  
  <p>I have a problem that exception is not handled in some_foo, I get error instead of response="error", task is crashed and i get Traceback that indicates an Exception was raised.</p>
  
  <p>Is it possible to return regular response, but to set celery task as failed, so result in flower will be failed ?</p>
  
  <p>I am using:<br />
  Celery 4.1<br />
  AMPQ as broker<br />
  Celery Flower as monitoring<br /></p>