ошибка gcloud: ApiError: Not Found at new util.ApiError

Любой, кто знаком с этим исключением gcloud:

ApiError: не найдено в новом util.ApiError (/site/node_modules/gcloud/lib/common/util.js:128:10) в Object.parseHttpRespBody (/site/node_modules/gcloud/lib/common/util.js:206 :30) в Object.handleResp (/site/node_modules/gcloud/lib/common/util.js:146:18) в /site/node_modules/gcloud/lib/common/util.js:447:12 в Request.onResponse [как _callback] (/site/node_modules/gcloud/node_modules/retry-request/index.js:120:7) в Request.self.callback (/site/node_modules/request/request.js:187:22) в запросе .emit (events.js:98:17) по запросу. (/site/node_modules/request/request.js:1044:10) в Request.emit (events.js:95:17) в IncomingMessage. (/site/node_modules/request/request.js:965:12) в IncomingMessage.emit (events.js:117:20) в _stream_readable.js:944:16 в process._tickDomainCallback (node.js:492:13)

Он появляется только в производстве (конечно) и в настоящее время постоянно. Раньше появлялось периодически и было предположение что это глюк @gCloud так как локально воспроизвести не получалось. Это связано с частью кода, которая использует простейший метод gCloud lib bucket.upload без каких-либо параметров, кроме файла... Вот текущая функция, которая это делает:

function uploadToGoogleCloud(filePath, makePublic) {
  var gstorage = gcloud.storage({
    projectId: EXAMPLE_projectId,
    credentials: EXAMPLE_credentials,
  });

  var spBucket = Promise.promisifyAll(gstorage.bucket(EXAMPLE_bucket));

  return spBucket.uploadAsync(filePath).then(function(file) {
    if (makePublic) {
      var fileAsync = Promise.promisifyAll(file);
      return fileAsync.makePublicAsync().then(function() {
        return file;
      });
    }
    return file;
  });
}

Любая обратная связь очень ценится.


person Akrion    schedule 11.08.2016    source источник
comment
Таким образом, похоже, что файлы на самом деле загружаются, но не публикуются. Надеясь, что это поможет с некоторыми предложениями. Мы все еще пытаемся решить эту проблему.   -  person Akrion    schedule 16.08.2016
comment
Отчет об ошибках GCS API — это шутка. Они не сообщают никаких подробностей о том, что происходит не так. Сводит меня с ума.   -  person Tyguy7    schedule 06.12.2016
comment
@Akrion, ты смог решить эту проблему? Есть ли другие решения здесь или здесь для тебя? Если это так, предоставление вашего решения здесь лучше поможет сообществу.   -  person Jordan    schedule 06.09.2017


Ответы (1)


Ошибка немного неясна, но для меня была правильной. Я получил эту ошибку, когда в некоторых случаях пытался записать в несуществующую таблицу bigquery (я случайно передал «undefined» в качестве имени таблицы), я подозреваю, что под капотом происходит какое-то принуждение к ошибке 404.

person Mattias Petter Johansson    schedule 17.12.2016