Видимо и постоянно провал задачи GAE - PullRequest
1 голос
/ 14 августа 2011

Очереди задач App Engine гарантируют, что задачи повторяются, если они возвращают код состояния вне диапазона 2xx, который, очевидно, включает случайные исключения. Это хорошо для случайных сбоев, таких как тайм-ауты, но в случае постоянных сбоев - когда задача не может быть успешно завершена независимо от того, сколько раз она повторяется - это вызывает ненужную загрузку. Конечно, в этом случае можно вернуть 2xx, но это не будет зарегистрировано как ошибочный запрос GAE и не будет отображаться в таблице «Ошибки» на панели управления консоли администратора.

Поэтому я спрашиваю: есть ли способ провалить задачу таким образом, что это:

  • не повторяется (постоянный сбой)
  • отображается в консоли администратора как ошибочный запрос

Ответы [ 2 ]

2 голосов
/ 14 августа 2011

Все, что вам нужно сделать, чтобы запрос появился на вкладке ошибок консоли администратора, - это зарегистрировать хотя бы одно сообщение на уровне ERROR или выше. Просто зарегистрируйте указанное сообщение, а затем верните код состояния 200, чтобы убедиться, что ваша задача не была повторно поставлена ​​в очередь.

Если все, что вам нужно, это прекратить повторные попытки после определенного количества попыток, вы можете настроить .

.
1 голос
/ 14 августа 2011

Здесь есть небольшая загвоздка 22. Вы хотите, чтобы не повторить задачу, которая не удается каким-то конкретным способом. Но кроме кодов ответов HTTP, как GAE знать? «Да, я потерпел неудачу, но это нормально». или «Да, я потерпел неудачу и навсегда буду» не может общаться, учитывая HTTP-коды ответа , доступные (кроме, может быть, «501 Не реализовано», что означает что-то еще). Самое близкое, что вы можете получить, - это ответ 2xx, который исключают некоторые сценарии сбоев.

Нет возможности исследовать трассировки стека задач, но, если таковые были, определение того, что конкретная трассировка стека означает, что условие сбоя является постоянным, будет довольно трудным. Докторские диссертации могут быть вовлечены.

Я думаю, что это сводится к проверке и бдительности.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...