Облачная задача App Engine продолжает выдавать ошибку 500, но работает при ручном вызове URL - PullRequest
0 голосов
/ 05 октября 2019

Запрос работает на моем локальном компьютере и при вызове его вручную в браузере на движке приложения, но фоновые задачи продолжают выдавать ошибку 500 и журналы по умолчанию бесполезны:

2019-10-05 11:37: 48.509 ICT Запрос не выполнен из-за невозможности успешного запуска экземпляра 2019-10-05 11: 37: 48.509 Процесс ICT завершен из-за невозможности ответить на запрос запуска с кодом состояния HTTP 200-299 или 404.

Я гарантировал, что я ловлю все возможные исключения, но не выдается.

Помогите! Я был в этом часами. У меня такое ощущение, что это не проблема кода.

У меня есть задачи планировщика Google Cloud, которые вызывают / start_import для создания задач, которые вызывают / task_handler, и я вижу, что это создает задачу нормально, но сама задачавыдает ошибку 500.

Странно то, что она работала раньше.

$logger->write('Log started from background process');

/**
 * This is an example of a front controller for a flat file PHP site. Using a
 * Static list provides security against URL injection by default. See README.md
 * for more examples.
 */
# [START gae_simple_front_controller]
switch (@parse_url($_SERVER['REQUEST_URI'])['path']) {
    case '/':
     echo 'hello there';
        //require 'homepage.php';
        break;
case '/start_import':

           global $logger;

     $logger->write('Starting task');

    //code to create task that is working

     break;
   case '/task_handler':

           global $logger;

     $logger->write('Starting task');
      break;



1 Ответ

0 голосов
/ 06 октября 2019

ОК, проблема решена. Я вернулся к использованию службы по умолчанию в GAE, и это сработало. Я использовал отдельное имя сервиса, но, учитывая, что у меня есть только 1 сервис, я вернулся к стандартному.

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

...