Вы просматриваете документацию Apigee Edge .
Перейдите к документации Apigee X. информация
В этом разделе описаны ошибки и предупреждения, с которыми вы можете столкнуться при работе с Edge Microgateway.
Общие ошибки приложения
HTTP 500, сбой в обработчике ошибок . Этот номер будет иметь большинство ошибок, а также некоторые ошибки, возвращаемые целевыми объектами. В частности, error-middleware.js используется во всем модуле microgateway-core . Когда он используется, он записывает коды состояния в журнал с помощью
logger object: logger.error(err, 'failed in error handler');
. Для кодов, полученных от целей между 100 и 300, error-middleware.js перезаписывает statusCode на 500 для возврата клиенту.HTTP 404. Этот статус можно увидеть в виде трассировки стека с сообщением:
no match found for [API_path_name]
.
Ошибки и предупреждения модуля
Вы можете использовать эту информацию для настройки оповещений, которые помогут вам отслеживать развертывание Edge Microgateway и управлять им.
Следующие термины, которые появляются в справочнике по ошибкам в разделе «Обработчик», указывают, как различные ошибки обрабатываются в Edge Microgateway.
- Assert : Обычно Edge Microgateway останавливается, если оценка утверждения не удалась. Однако это не всегда так, поскольку «утверждает» выдает исключения, которые могут быть перехвачены.
- выдает : Возможна остановка системы.
- обратный вызов : ошибка передается обратному вызову, и система может продолжить работу.
Тип | Сообщение | Обработчик | Примечания |
---|---|---|---|
модуль микрошлюза | |||
ошибка | требуется организация | утверждать | Assert(options.org, «требуется org»); |
ошибка | требуется окружение | утверждать | Assert(options.env, «требуется окружение») |
ошибка | требуется имя пользователя | утверждать | Assert(options.username || options.token, «требуется имя пользователя»); |
ошибка | требуется пароль | утверждать | Assert(options.password || options.token, «необходим пароль») |
ошибка | требуется организация | утверждать | Assert(options.org, «требуется org»); |
ошибка | требуется окружение | утверждать | Assert(options.env, «требуется окружение») |
ошибка | требуется имя пользователя | утверждать | Assert(options.username || options.token, «требуется имя пользователя»); |
ошибка | требуется пароль | утверждать | Assert(options.password || options.token, «необходим пароль») |
ошибка | требуется организация | утверждать | Assert(options.org, «требуется org»); |
ошибка | требуется окружение | утверждать | Assert(options.env, «требуется окружение») |
ошибка | требуется организация | утверждать | Assert(options.org, «требуется org»); |
ошибка | требуется окружение | утверждать | Assert(options.env, «требуется окружение») |
ошибка | требуется имя пользователя | утверждать | Assert(options.username, 'требуется имя пользователя'); |
ошибка | требуется пароль | утверждать | Assert(options.password, 'необходим пароль'); |
ошибка | требуется организация | утверждать | Assert(options.org, 'требуется org'); |
ошибка | требуется окружение | утверждать | Assert(options.env, 'требуется окружение'); |
ошибка | должен иметь назначенный целевой файл | утверждать | Assert(targetFile, 'должен быть назначен целевой файл') |
ошибка | должен иметь ключ | утверждать | Assert(key, 'должен иметь ключ'); |
ошибка | должен иметь секрет | утверждать | Assert(secret, 'должен быть секрет'); |
ошибка | каталог должен быть настроен | утверждать | Assert(dir, 'каталог должен быть настроен') |
ошибка | обратный вызов должен присутствовать | утверждать | Assert(обратный вызов, 'обратный вызов должен присутствовать') |
ошибка | требуется имя пользователя | утверждать | Assert(options.username, 'требуется имя пользователя'); |
ошибка | требуется пароль | утверждать | Assert(options.password, 'необходим пароль'); |
ошибка | требуется организация | утверждать | Assert(options.org, 'требуется org'); |
ошибка | требуется окружение | утверждать | Assert(options.env, 'требуется окружение'); |
ошибка | Требуется URL-адрес выполнения. | утверждать | Assert(options.runtimeUrl, 'Требуется runtimeUrl'); |
ошибка | требуется mgmtUrl | утверждать | Assert(options.mgmtUrl, 'Требуется mgmtUrl'); |
ошибка | файл требуется | утверждать | Assert(options.file, «необходим файл») |
ошибка | должна иметь цель | утверждать | Assert(options.target, 'должна иметь цель'); |
ошибка | плагины не настроены | утверждать | Assert(config.edgemicro.plugins, 'плагины не настроены'); |
ошибка | Каталог плагина не существует: + каталог плагина | утверждать | Assert(fs.existsSync(pluginDir), 'каталог плагина не существует: ' + плагинDir); |
ошибка | каталог плагина не является каталогом: + плагинDir | утверждать | Assert(stat.isDirectory(), 'каталог плагина не является каталогом: ' + плагинDir); |
ошибка | ошибка чтения каталога плагина: +pluginDir | утверждать | Assert(dirs, 'ошибка чтения каталога плагина: ' + плагинDir); |
ошибка | должен иметь жетон | утверждать | Assert(токен, 'должен иметь токен'); |
ошибка | путь конфигурации не может быть пустым | утверждать | Assert(config, 'Путь конфигурации не может быть пустым'); |
ошибка | должен быть EDGEMICRO_KEY | утверждать | Assert(ключ, 'должен иметь EDGEMICRO_KEY'); |
ошибка | должен иметь EDGEMICRO_SECRET | утверждать | Assert(секрет, 'должен иметь EDGEMICRO_SECRET'); |
ошибка | конфигурация не существует | бросает | связано с файлом yaml |
ошибка | Edgemicro, кажется, уже запущен. | консоль.error | попытка перезаписать файл .sock |
ошибка | Не удалось проверить изменения в конфигурации. Повторю попытку после | консоль.error | проблема с периферийной связью |
ошибка | Если сервер не запущен, возможно, это связано с некорректным завершением предыдущего запуска. | консоль.error | |
ошибка | Отсутствует %s, пожалуйста, запустите | консоль.error | Отсутствует (.*). Пожалуйста, запустите |
ошибка | Перезагрузка Edgemicro не удалась | консоль.error | командный уровень |
ошибка | Остановить EdgeMicro не удалось | консоль.error | Командный уровень |
ошибка | «Попробуйте удалить ' + ipcPath + ' и начать заново» | консоль.error | |
ошибка | «Конфигурация кэша» + кэш + «не существует. выход. | консоль.error | |
ошибка | Конфигурационный файл не может быть записан: | консоль.error | Конфигурация не удастся |
ошибка | Конфигурационный файл не скачался: | консоль.error | Конфигурация не удастся |
ошибка | Edge Micro не удалось запустить | консоль.error | Он не должен запускаться |
ошибка | Edgemicro не работает. | консоль.error | Процесс проверки, его не должно быть в списке |
ошибка | требуется окружение | консоль.error | Переменные среды, необходимые для запуска |
ошибка | ошибка - редактирование apiproxy Callout.xml | консоль.error | Доступ к файлам |
ошибка | ошибка - редактирование apiproxy default.xml | консоль.error | Доступ к файлам |
ошибка | проверка ошибок для сертификата. Установка нового сертификата. | консоль.error | Открытый ключ нельзя использовать |
ошибка | ошибка при получении региона для организации | консоль.error | key-gen.js, cert-lib.js и Private.js |
ошибка | ошибка при загрузке учетных данных | консоль.error | Невозможно синхронизировать открытый ключ с Edge |
ошибка | неуспешный | консоль.error | ключ-gen.js |
ошибка | не удалось инициализировать файл пути конфигурации %s | консоль.error | Конфигурация не загружается |
ошибка | неверный ответ от API региона | консоль.error | key-gen.js, cert-lib.js и Private.js |
ошибка | требуется ключ | консоль.error | Параметр |
ошибка | требуется организация | консоль.error | Параметр |
ошибка | порт недоступен. | консоль.error | Параметр |
ошибка | требуется секрет | консоль.error | Параметр |
ошибка | Протокол URL не поддерживается: | консоль.error | Информация о конфигурации указывает на то, что интернет-протокол не входит в область действия Edge Microgateway. |
ошибка | проверка отрицательного результата аналитики: FAIL | консоль.error | Возможен сбой/сбой |
ошибка | проверка аналитики с полезной нагрузкой: FAIL | консоль.error | Возможен сбой/сбой |
ошибка | проверка доступности URL-адреса начальной загрузки: FAIL | консоль.error | Возможен сбой/сбой |
ошибка | проверка доступности jwt_public_key: FAIL | консоль.error | Возможен сбой/сбой |
ошибка | проверка наличия продуктов: FAIL | консоль.error | Возможен сбой/сбой |
ошибка | проверка квоты с настроенными продуктами: FAIL | консоль.error | Возможен сбой/сбой |
предупреждать | не удалось получить конфигурацию от шлюза. продолжаю, попробую кэшированную копию.. | консоль.error | |
предупреждать | KVM уже существует в вашей организации. | консоль.log | |
предупреждать | уже развернут | консоль.log | |
предупреждать | секвенированный плагин не найден: | консоль.предупреждать | |
предупреждать | Каталог плагина %s не существует | консоль.log | каталог_плагина (.*) не существует |
модуль ядра микрошлюза | |||
ошибка | конфигурация не инициализирована | утверждать | Assert(config, 'конфигурация не инициализирована') |
ошибка | должен быть конфиг | утверждать | Assert(config, 'должен иметь конфигурацию') |
ошибка | должен быть конфиг | утверждать | Assert(config, 'должна иметь конфигурацию') |
ошибка | в конфигурации должен быть uid | утверждать | Assert(config.uid, 'конфигурация должна иметь uid'); |
ошибка | в конфигурации должен быть config.edgemicro.logging | утверждать | Assert(logConfig, 'в конфигурации должен быть config.edgemicro.logging'); |
ошибка | должен иметь метод запроса | утверждать | Assert(httpLibrary.request, 'должен быть метод запроса'); |
ошибка | должен быть загружен плагин в память | утверждать | Assert(options.plugin, "плагин должен быть загружен в память"); |
ошибка | init должен быть функцией | утверждать | Assert(_.isFunction(options.plugin.init), 'init должна быть функцией'); |
ошибка | должно быть имя плагина | утверждать | Assert(options.pluginName, "должно быть имя плагина"); |
ошибка | игнорирование недопустимых обработчиков плагинов + имя | утверждать | Assert(_.isObject(middleware), 'игнорирование недопустимых обработчиков плагинов' + name); |
ошибка | опции должны содержать конфигурацию | утверждать | Assert(config, 'опции должны содержать конфигурацию') |
ошибка | плагин должен иметь имя | утверждать | Assert(name,"Плагин должен иметь имя") |
ошибка | имя должно быть строкой | утверждать | Assert(_.isString(name),"имя должно быть строкой"); |
ошибка | плагин должен быть функцией | утверждать | Assert(_.isFunction(plugin),"плагин должен быть функцией(config,logger,stats){return {onresponse:function(req,res,data,next){}}}"); |
ошибка | должен иметь ключ | утверждать | Assert(key, 'должен иметь ключ'); |
ошибка | должен иметь секрет | утверждать | Assert(secret, 'должен быть секрет'); |
ошибка | должен иметь исходный каталог конфигурации | утверждать | Assert(source, 'должен иметь исходный каталог конфигурации'); |
ошибка | ошибка при загрузке плагина | консоль.error | Плагин не загружен |
ошибка | сбой в обработчике ошибок | перезвонить | Функция HTTP server.on() |
ошибка | длина заголовка больше допустимого размера | Ошибка HTTP | Не запускает плагин |
ошибка | ответ завершен до того, как работа может быть выполнена | logger.error | Целевой плагин не запускается |
ошибка | обработчик выбросил исключение | перезвонить | Захват ошибки из плагина (перехват) |
ошибка | ошибка начала края микро | перезвонить | Edge Microgateway не запускается |
ошибка | плагин должен быть функцией | бросает | |
предупреждать | консоль.error | предупреждает | Запись журнала |
предупреждать | Ошибка целевого запроса | вызвать целевую обработку ошибок | Ошибка HTTP-клиента в связи с целью |
предупреждать | Ошибка целевого ответа | вызвать целевую обработку ошибок | Ошибка целевого сервера HTTP в связи с целью, как видно на клиенте |
модуль microgateway-config | |||
ошибка | разрешить_сообщение | утверждать | Assert(+config.quota.allow > 0,allow_message); |
ошибка | конфигурация не существует | бросает | Ямл-файл конфигурации |
ошибка | конфигурация пуста | бросает | Ямл-файл конфигурации |
ошибка | конфигурация не является файлом | бросает | Ямл-файл конфигурации |
ошибка | конфигурация не определена | утверждать | Assert(config, 'Конфигурация не определена'); |
ошибка | config.analytics.batchSize недействителен. | утверждать | Assert(+config.analytics.batchSize > 0, 'config.analytics.batchSize недействителен'); |
ошибка | config.analytics.batchSize не является числом | утверждать | Assert(typeof config.analytics.batchSize === 'number', 'config.analytics.batchSize не является числом'); |
ошибка | config.analytics.bufferSize недействителен. | утверждать | Assert(+config.analytics.bufferSize > 0, 'config.analytics.bufferSize недействителен'); |
ошибка | config.analytics.bufferSize не является числом | утверждать | Assert(typeof config.analytics.bufferSize === 'number', 'config.analytics.bufferSize не является числом'); |
ошибка | config.analytics.flushInterval недействителен. | утверждать | Assert(+config.analytics.flushInterval > 0, 'config.analytics.flushInterval недействителен'); |
ошибка | config.analytics.flushInterval не является числом | утверждать | Assert(typeof config.analytics.flushInterval === 'number', 'config.analytics.flushInterval не является числом'); |
ошибка | config.analytics.proxy не является «пустышным» | утверждать | Assert(config.analytics.proxy === 'dummy', 'config.analytics.proxy не является "dummy"'); |
ошибка | config.analytics.proxy не определен | утверждать | Assert(config.analytics.proxy, 'config.analytics.proxy не определен'); |
ошибка | config.analytics.proxy_revision не является числом | утверждать | Assert(typeof config.analytics.proxy_revision === 'number', 'config.analytics.proxy_revision не является числом'); |
ошибка | config.analytics.proxy_revision не определен | утверждать | Assert(config.analytics.proxy_revision, 'config.analytics.proxy_revision не определен'); |
ошибка | config.analytics.source не является «микрошлюзом» | утверждать | Assert(config.analytics.source === 'microgateway', 'config.analytics.source не является "microgateway"'); |
ошибка | config.analytics.source не определен | утверждать | Assert(config.analytics.source, 'config.analytics.source не определен'); |
ошибка | config.analytics.uri не является строкой | утверждать | Assert(typeof config.analytics.uri === 'строка', 'config.analytics.uri не является строкой'); |
ошибка | config.analytics.uri не определен | утверждать | Assert(config.analytics.uri, 'config.analytics.uri не определен'); |
ошибка | config.apikeys.public_key не определен | утверждать | Assert(typeof config.apikeys.public_key === 'строка', 'config.apikeys.public_key не определен'); |
ошибка | config.edge_config не определен | утверждать | Assert(config.edge_config, 'config.edge_config не определен'); |
ошибка | config.edge_config.bootstrap не определен | утверждать | Assert(config.edge_config.bootstrap, 'config.edge_config.bootstrap не определен'); |
ошибка | config.edge_config.jwt_public_key не определен | утверждать | Assert(config.edge_config.jwt_public_key, 'config.edge_config.jwt_public_key не определен'); |
ошибка | config.edge_config.proxy должен быть определен, если config.edge_config.proxy_tunnel определен | утверждать | Assert(typeof config.edge_config.proxy !== 'не определено', 'config.edge_config.proxy должен быть определен, если config.edge_config.proxy_tunnel определен'); |
ошибка | config.edge_config.proxy_tunnel не является логическим значением | утверждать | Assert(typeof config.edge_config.proxy_tunnel === 'boolean', 'config.edge_config.proxy_tunnel не является логическим значением'); |
ошибка | config.edge_config.refresh_interval не является числом | утверждать | Assert(typeof config.edge_config.refresh_interval === 'number', 'config.edge_config.refresh_interval не является числом'); |
ошибка | config.edge_config.refresh_interval слишком мал (минимум 1 час) | утверждать | Assert(config.edge_config.refresh_interval >= 3600000, 'config.edge_config.refresh_interval слишком мал (минимум 1 час)'); |
ошибка | config.edge_config.retry_interval не является числом | утверждать | Assert(typeof config.edge_config.retry_interval === 'number', 'config.edge_config.retry_interval не является числом'); |
ошибка | config.edge_config.retry_interval слишком мал (минимум 5 секунд) | утверждать | Assert(config.edge_config.retry_interval >= 5000, 'config.edge_config.retry_interval слишком мал (минимум 5 с)'); |
ошибка | config.edgemicro не определен | утверждать | Assert(config.edgemicro, 'config.edgemicro не определен'); |
ошибка | config.edgemicro.logging не определен | утверждать | Assert(config.edgemicro.logging, 'config.edgemicro.logging не определен'); |
ошибка | config.edgemicro.logging.dir не определен | утверждать | if (!config.edgemicro.logging.to_console) Assert(config.edgemicro.logging.dir, 'config.edgemicro.logging.dir не определен'); |
ошибка | config.edgemicro.logging.level не определен | утверждать | Assert(config.edgemicro.logging.level, 'config.edgemicro.logging.level не определен'); |
ошибка | config.edgemicro.max_connections не является числом | утверждать | Assert(typeof config.edgemicro.max_connections === 'number', 'config.edgemicro.max_connections не является числом'); |
ошибка | config.edgemicro.max_connections не определен | утверждать | Assert(config.edgemicro.max_connections, 'config.edgemicro.max_connections не определен'); |
ошибка | config.edgemicro.plugins.sequence не является массивом | утверждать | Assert(Array.isArray(config.edgemicro.plugins.sequence), 'config.edgemicro.plugins.sequence не является массивом'); |
ошибка | config.edgemicro.port не определен | утверждать | Assert(config.edgemicro.port, 'config.edgemicro.port не определен'); |
ошибка | config.oauth.allowInvalidAuthorization не определен | утверждать | Assert(typeof config.oauth.allowInvalidAuthorization === 'boolean', 'config.oauth.allowInvalidAuthorization не определен'); |
ошибка | config.oauth.allowNoAuthorization не определен | утверждать | Assert(typeof config.oauth.allowNoAuthorization === 'boolean', 'config.oauth.allowNoAuthorization не определен'); |
ошибка | config.oauth.public_key не определен | утверждать | Assert(typeof config.oauth.public_key === 'строка', 'config.oauth.public_key не определен'); |
ошибка | config.oauthv2.public_key не определен | утверждать | Assert(typeof config.oauthv2.public_key === 'строка', 'config.oauthv2.public_key не определен'); |
ошибка | config.proxies не определен | утверждать | Assert(config.proxies, 'config.proxies не определен'); |
ошибка | config.proxy[ + index + ].base_path не определен | утверждать | Assert(proxy.base_path, 'config.proxy[' + index + '].base_path не определен'); |
ошибка | config.proxy[ + index + ].max_connections не является числом | утверждать | Assert(typeof proxy.max_connections === 'number', 'config.proxy[' + index + '].max_connections не является числом'); |
ошибка | config.proxy[ + index + ].max_connections не определен | утверждать | Assert(proxy.max_connections, 'config.proxy[' + index + '].max_connections не определено'); |
ошибка | config.proxy[ + index + ].имя не определено | утверждать | Assert(proxy.name, 'config.proxy[' + index + '].имя не определено'); |
ошибка | config.proxy[ + index + ].proxy_name не определено | утверждать | Assert(proxy.target_name, 'config.proxy[' + index + '].proxy_name не определено'); |
ошибка | config.proxy[ + index + ].revision не определена | утверждать | Assert(proxy.revision, 'config.proxy[' + index + '].revision не определена'); |
ошибка | config.proxy[ + index + ].url не определен | утверждать | Assert(proxy.url, 'config.proxy[' + index + '].url не определен'); |
ошибка | config.quota.allow не является числом | утверждать | Assert(typeof config.quota.allow === 'number', 'config.quota.allow не является числом'); |
ошибка | config.quota.allow не определен | утверждать | Assert(config.quota.allow, 'config.quota.allow не определен'); |
ошибка | config.quota.interval не является числом | утверждать | Assert(typeof config.quota.interval === 'number', 'config.quota.interval не является числом'); |
ошибка | config.quota.интервал не определен | утверждать | Assert(config.quota.interval, 'config.quota.interval не определен'); |
ошибка | config.spikearrest не определен | утверждать | Assert(config.spikearrest, 'config.spikearrest не определен'); |
ошибка | config.spikearrest.allow недействителен. | утверждать | Assert(+config.spikearrest.allow > 0, 'config.spikearrest.allow недействителен'); |
ошибка | config.spikearrest.allow не является числом | утверждать | Assert(typeof config.spikearrest.allow === 'number', 'config.spikearrest.allow не является числом'); |
ошибка | config.spikearrest.allow не определен | утверждать | Assert(config.spikearrest.allow, 'config.spikearrest.allow не определен'); |
ошибка | config.spikearrest.bufferSize недействителен. | утверждать | Assert(+config.spikearrest.bufferSize > 0, 'config.spikearrest.bufferSize недействителен'); |
ошибка | config.spikearrest.bufferSize не является числом | утверждать | Assert(typeof config.spikearrest.bufferSize === 'number', 'config.spikearrest.bufferSize не является числом'); |
ошибка | config.spikearrest.timeUnit не определен | утверждать | Assert(config.spikearrest.timeUnit, 'config.spikearrest.timeUnit не определен'); |
ошибка | КРИТИЧЕСКАЯ ОШИБКА: ошибка анализа загруженного списка продуктов. | перезвонить | |
ошибка | КРИТИЧЕСКАЯ ОШИБКА: ошибка анализа загруженного списка прокси. | перезвонить | |
ошибка | ОБНАРУЖЕНА ОШИБКА НЕПРАВИЛЬНОЙ КОНФИГУРАЦИИ ИЗДЕЛИЯ | консоль.error | За ним следует console.warn('используя старую кэшированную конфигурацию'); |
ошибка | ошибка чтения конфига из | бросает | Ямл-файл конфигурации |
ошибка | ошибка сохранения конфигурации в | перезвонить | Ямл-файл конфигурации |
ошибка | фатально: кэшированная конфигурация недоступна, продолжить невозможно. | перезвонить | |
ошибка | интервал_сообщение | утверждать | Assert(+config.quota.interval > 0, интервал_сообщение); |
ошибка | неверный протокол для config.edge_config.proxy (ожидается http: или https:: + proxy_url.protocol) | утверждать | Assert(proxy_url.protocol === 'http:' || proxy_url.protocol === 'https:', 'неверный протокол для config.edge_config.proxy (ожидается http: или https:): ' + proxy_url.protocol); |
ошибка | неверный прокси-хост для config.edge_config.proxy | утверждать | Assert(proxy_url.hostname, 'неверный прокси-хост для config.edge_config.proxy: ' + proxy_url.hostname); |
ошибка | похоже, Edge Micro не настроен, см. руководство администратора | перезвонить | Результат: не удалось загрузить конфигурацию. |
ошибка | ключ отсутствует | утверждать | Assert(keys.key, 'ключ отсутствует'); |
ошибка | должен иметь configDir | утверждать | Assert(configDir, 'должен иметь configDir') |
ошибка | должны быть варианты | утверждать | Assert(options, 'должны быть опции'); |
ошибка | должен иметь источник | утверждать | Assert(источник, 'должен иметь источник') |
ошибка | должен иметь исходный код для загрузки | утверждать | Assert(options.source, 'должен иметь источник для загрузки') |
ошибка | должен иметь целевой файл | утверждать | Assert(имя_файла, 'должен иметь целевой файл') |
ошибка | параметры не могут быть нулевыми | утверждать | Assert(options, 'опции не могут быть нулевыми'); |
ошибка | options.keys не может быть нулевым | утверждать | Assert(options.keys, 'options.keys не может быть нулевым'); |
ошибка | порт_сообщение | утверждать | Assert(+config.edgemicro.port <65536, port_message); |
ошибка | продукты должны быть массивом | утверждать | Assert(Array.isArray(products), 'продукты должны быть массивом'); |
ошибка | «прокси для продукта» + продукт + «должен быть массивом» | утверждать | Assert(Array.isArray(product.proxies), 'прокси для продукта ' + продукт +' должны быть массивом'); |
ошибка | секрет отсутствует | утверждать | Assert(keys.secret, 'секрет отсутствует'); |
ошибка | цель не установлена | утверждать | Assert(target, 'цель не установлена'); |
предупреждать | ошибка загрузки конфигурации, проверьте конфигурацию начальной загрузки | консоль.предупреждать | |
предупреждать | не удалось загрузить jwt_public_key | консоль.предупреждать | |
предупреждать | Ключи jwk не включены | консоль.предупреждать | |
предупреждать | сообщение, «скачать с», URL, «возвращено» | консоль.предупреждать | Искать: (.*)\sdownload from\s(.*)\sreturned |
предупреждать | в ответе не найдено ни одной микропродукции Edge | консоль.предупреждать | |
предупреждать | в организации не найдено пограничных микропрокси | консоль.предупреждать | |
предупреждать | в ответ не найдено пограничных микропрокси | консоль.предупреждать | |
предупреждать | в организации продукты не найдены | консоль.предупреждать | |
предупреждать | в ответе товары не найдены | консоль.предупреждать | |
предупреждать | использование старой кэшированной конфигурации | консоль.предупреждать | |
модуль microgateway-plugins | |||
ошибка | конфигурация не существует | бросает | Связано с файлом yaml |
ошибка | апикей | HTTP-ответ | Сбои в плагине apiky |
ошибка | батут | HTTP-ответ | Сбои в плагине bauth |
ошибка | экстаут | HTTP-ответ | Сбои в плагине extauth |
ошибка | Оаутентификация | HTTP-ответ | Сбои в плагине oauth |
предупреждать | Произошла ошибка при обработке аналитики Apigee. Разрешить продолжить обработку запроса | logger.error | |
предупреждать | игнорирование ошибки | консоль.предупреждать | Плагины apikeys, oauth и oauthv2 |
предупреждать | ошибка синтаксического анализа jwt: | консоль.предупреждать | |
предупреждать | В объекте ответа на присягу отсутствует setHeader | консоль.предупреждать | Ошибка параметра oauth указывает на то, что о некоторых ошибках не будет сообщено. |
предупреждать | объект ответа присяги не предоставляется средой выполнения | консоль.предупреждать | ошибка параметра oauth |
предупреждать | объект статистики oath не предоставляется средой выполнения | консоль.предупреждать | ошибка параметра oauth |
модуль apigeetool-node | |||
ошибка | Не удалось удалить кэш с кодом состояния %d', res.statusCode | перезвонить | Брошен в deletecache.js. Код состояния от Apigee Edge. Передает обратному вызову ошибку трассировки стека со следующим сообщением: Done(new Error(errMsg)); |
ошибка | Не удалось удалить продукт с кодом состояния %d', res.statusCode | перезвонить | Брошен в deleteproduct.js. Код состояния от Apigee Edge. Передает обратному вызову ошибку трассировки стека со следующим сообщением: Done(new Error(errMsg)); |
ошибка | org, API и редакция должны быть указаны! | перезвонить | Бросаем в fetchproxy.js. Ошибка конфигурации. |
ошибка | Получена ошибка %d при получении прокси: %j. | перезвонить | Бросаем в fetchproxy.js. Код состояния, отличный от 200. |
ошибка | Не удалось создать приложение с кодом состояния %d. | перезвонить | Бросаем в createapp.js. Передает все ошибки обратно в обратные вызовы как ошибки трассировки стека. Не делает никаких выводов на консоль или записей в журнале. |
ошибка | команда + 'не удалась с кодом состояния %d | перезвонить | Бросаем в команду-utils.js. Какая бы команда ни анализировалась и не передавалась этому модулю, любой код, отличный от 200 или 201, будет генерировать сообщение об ошибке. Форматирует это сообщение, но не печатает. Передает ошибку трассировки стека вместе с сообщением обратно в обратные вызовы. |
ошибка | Получена ошибка %d при получении общего потока: %s. | перезвонить | Бросается в fetchsharedflow.js. Для любого статуса HTTP, отличного от 200. Если запись успешна, но не удается записать файл, он записывает в консоль: Не удалось записать файл Текст ошибки: [stack_trace_error] |
ошибка | Не удалось создать KeySecret с кодом состояния %d', res.statusCode | перезвонить | Бросаем в createappkey.js. Для кодов состояния HTTP от Apigee Edge, отличных от 200 или 201. |
ошибка | Не удалось создать кэш с кодом состояния %d', res.statusCode | перезвонить | Бросаем в createcache.js. Для кодов состояния HTTP от Apigee Edge, отличных от 200 или 201. |
ошибка | Не удалось создать продукт с кодом состояния %d', res.statusCode | перезвонить | Бросаем в createproduct.js. Для кодов состояния HTTP от Apigee Edge, отличных от 201. Если статус HTTP равен 201, но ответ содержит JSON ошибки, JSON ошибки перенаправляется в обратный вызов. |
ошибка | Не удалось удалить приложение с кодом состояния %d', res.statusCode | перезвонить | Брошен в deleteapp.js. Для кодов состояния HTTP от Apigee Edge, отличных от 200. Если статус HTTP равен 200, но ответ содержит ошибку JSON, JSON ошибки перенаправляется в обратный вызов. |
ошибка | Не удалось создать разработчика с кодом состояния %d', res.statusCode | перезвонить | Бросаем в createdeveloper.js. Для кодов состояния HTTP от Apigee Edge, отличных от 201. Если статус HTTP равен 201, но ответ содержит JSON ошибки, JSON ошибки перенаправляется в обратный вызов. |
ошибка | Не удалось удалить разработчика с кодом состояния %d', res.statusCode | перезвонить | Бросаем в deletedeveloper.js. Для кодов состояния HTTP от Apigee Edge, отличных от 200. Если статус HTTP равен 200, но ответ содержит ошибку JSON, JSON ошибки перенаправляется в обратный вызов. |
Ошибки плагина
accesscontrol plug-in
This section describes the error codes and messages that are returned by the
accesscontrol
plug-in with descriptions of possible causes.
Error | Message | HTTP status | Possible Causes |
---|---|---|---|
Not printed | Forbidden | 403 | Access control rule |
accumulate-request plug-in
This section describes the error codes and messages that are returned by the
accumulate-request
plug-in with descriptions of possible causes.
No errors generated.
accumulate-resopnse plug-in
This section describes the error codes and messages that are returned by the
accumulate-response
plug-in with descriptions of possible causes.
No errors generated.
analytics plug-in
This section describes the error codes and messages that are returned by the
analytics
plug-in with descriptions of possible causes.
Errors encountered processing Apigee analytics are written to the Edge Microgateway log. Edge Microgateway processing continues.
apikeys plug-in
This section describes the error codes and messages that are returned by the
apikeys
plug-in with descriptions of possible causes.
Error | Message | HTTP status | Possible Causes |
---|---|---|---|
invalid_request | Invalid Request | 400 | allowNoAuthorization == false
No Authorization header in the HTTP request allowOAuthOnly == true |
invalid_request | API Key Verification URL not configured | 400 | Verification API service not in header. |
access_denied | Copy service message | 403 | In response to the auth service timeout |
missing_authorization | Missing API Key header | 401 | allowAPIKeyOnly == true
Unless allowInvalidAuthorization |
invalid_authorization | Invalid Authorization header | 401 | allowOAuthOnly == true
Authorization-header not in HTTP |
gateway_timeout | Copy service message | 504 | In response to the auth timeout |
default | 500 | All other not categorized |
bauth plug-in
This section describes the error codes and messages that are returned by the
bauth
plug-in with descriptions of possible causes.
Error | Message | HTTP status | Possible Causes |
---|---|---|---|
missing_authorization | Missing API Key header | 401 | allowAPIKeyOnly == true
Unless allowInvalidAuthorization |
invalid_authorization | Invalid Authorization header | 401 | allowOAuthOnly == true
Authorization-header not in HTTP |
gateway_timeout | Copy service message | 504 | In response to the auth timeout |
default | 500 | All other not categorized |
cloud-foundry-route-service plug-in
This section describes the error codes and messages that are returned by the
cloud-foundry-route-service
plug-in with descriptions of possible causes.
No errors generated.
cors plug-in
This section describes the error codes and messages that are returned by the
cors
plug-in with descriptions of possible causes.
No errors generated.
eurekaclient plug-in
This section describes the error codes and messages that are returned by the
eurekaclient
plug-in with descriptions of possible causes.
The eurekaclient plug-in throws a few console errors only, including a stack trace error on failed start and a warning about the target endpoint from Eureka not found.
extauth plug-in
This section describes the error codes and messages that are returned by the
extauth
plug-in with descriptions of possible causes.
Error | Message | HTTP status | Possible Causes |
---|---|---|---|
invalid_request | Invalid Request | 400 | allowNoAuthorization == false
No Authorization header in the HTTP request allowOAuthOnly == true |
invalid_request | API Key Verification URL not configured | 400 | Verification API service not in header. |
access_denied | Copy service message | 403 | In response to the auth service timeout |
missing_authorization | Missing API Key header | 401 | allowAPIKeyOnly == true
Unless allowInvalidAuthorization |
invalid_authorization | Invalid Authorization header | 401 | allowOAuthOnly == true
Authorization-header not in HTTP |
gateway_timeout | Copy service message | 504 | In response to the auth timeout |
default | 500 | All other not categorized |
header-uppercase plug-in
This section describes the error codes and messages that are returned by the
header-uppercase
plug-in with descriptions of possible causes.
No errors generated.
healthcheck plug-in
This section describes the error codes and messages that are returned by the
healthcheck
plug-in with descriptions of possible causes.
Error | Message | HTTP status | Possible Causes |
---|---|---|---|
503 | Too busy. No messages in HTTP or console | ||
default | Application is not running on specified application port | 500 | All other not categorized |
invalidHeader plug-in
This section describes the error codes and messages that are returned by the
invalidHeader
plug-in with descriptions of possible causes.
No errors generated.
json2xml plug-in
This section describes the error codes and messages that are returned by the
json2xml
plug-in with descriptions of possible causes.
Error | Message | HTTP status | Possible Causes |
---|---|---|---|
default | 500 | All other not categorized |
monitor plug-in
This section describes the error codes and messages that are returned by the
monitor
plug-in with descriptions of possible causes.
No errors generated.
oauth plug-in (v1)
This section describes the error codes and messages that are returned by the
oauth
plug-in (v1) with descriptions of possible causes.
Error | Message | HTTP status | Possible Causes |
---|---|---|---|
invalid_request | Invalid Authorization Header | 400 |
|
invalid_request | API Key Verification URL not configured | 400 | Verification API service not in header. |
Access_denied | Copy service message | 403 | In response to the auth service timeout |
invalid_token | Missing API Key header | 401 | allowAPIKeyOnly == true
Unless allowInvalidAuthorization is set |
invalid_token | token could not be parsed | 401 | allowAPIKeyOnly == true
Bad token delivered |
missing_authorization | Missing Authorization header | 401 | allowNoAuthorization == false
Authorization-header in HTTP allowOAuthOnly == true |
invalid_authorization | Invalid Authorization header | 401 | allowOAuthOnly == true
Authorization-header not in HTTP |
gateway_timeout | Copy service message | 504 | In response to the auth timeout |
default | 500 | All other uncategorized responses |
oauthv2 plug-in
This section describes the error codes and messages that are returned by the
oauthv2
plug-in with descriptions of possible causes.
Error | Message | HTTP status | Possible Causes |
---|---|---|---|
invalid_request | Invalid Authorization Header | 400 |
|
invalid_request | API Key Verification URL not configured | 400 | Verification API service not in header |
access_denied | Copy service message | 403 | In response to the auth service timeout |
invalid_token | Missing API Key header | 401 | allowAPIKeyOnly == true
Unless allowInvalidAuthorization is set |
invalid_token | token could not be parsed | 401 | allowAPIKeyOnly == true
Bad token delivered |
missing_authorization | Missing Authorization header | 401 | allowNoAuthorization == false
Authorization-header in HTTP allowOAuthOnly == true |
invalid_authorization | Invalid Authorization header | 401 | allowOAuthOnly == true
Authorization-header not in HTTP |
gateway_timeout | Copy service message | 504 | In response to the auth timeout |
default | 500 | All other uncategorized responses |
quota plug-in
This section describes the error codes and messages that are returned by the
quota
plug-in with descriptions of possible causes.
Defers to volos quota/apigee.
Error | Message | HTTP status | Possible Causes |
---|---|---|---|
invalid_authorization | Invalid Authorization header | 401 | allowOAuthOnly == true
Authorization-header not in HTTP |
gateway_timeout | Not authorized to call the remote proxy. Check the "key" parameter. | 404 | In response to the auth timeout |
default | 500 | All other not categorized | |
throw | uri parameter must be specified | apigeequota.js | |
throw | key parameter must be specified | apigeequota.js | |
callback | Apigee Remote Proxy not found at: ' + self.uri + '. Check your configuration | apigeequota.js | |
callback | HTTP error getting proxy version: %d. Check the "uri" parameter. | apigeequota.js | |
callback | Quotas with a fixed starting time are not supported | apigeequota.js | |
callback | Error updating remote quota: %d %s', resp.statusCode, body | apigeequota.js |
If there is an error on an entry in the product list, the product list will stop being processed.
quota-memory plug-in
This section describes the error codes and messages that are returned by the
quota-memory
plug-in with descriptions of possible causes.
Defers to volos quota/apigee.
Error | Message | HTTP status | Possible Causes |
---|---|---|---|
invalid_authorization | Invalid Authorization header | 401 | allowOAuthOnly == true
Authorization-header not in HTTP |
gateway_timeout | Not authorized to call the remote proxy. Check the "key" parameter. | 404 | In response to the auth timeout |
default | 500 | All other not categorized | |
throw | start time not allowed for month time units | quota.js. volos error on time format. | |
throw | Invalid start time %s | quota.js. volos error on time format. | |
throw | Invalid timeUnit %s | quota.js. volos error on time format. |
If there is an error on an entry in the product list, the product list will stop being processed.
spikearrest plug-in
This section describes the error codes and messages that are returned by the
spikearrest
plug-in with descriptions of possible causes.
Defers to volos spikearrest/memory.
Error | Message | HTTP status | Possible Causes |
---|---|---|---|
SpikeArrest engaged | 503 | Traffic spike. This is expected behavior. | |
throw | Invalid timeUnit %s | spikearrest.js | |
callback | key must be a string | spikearrest.js | |
throw | %s must be a number', name | spikearrest.js |
transform-uppercase plug-in
This section describes the error codes and messages that are returned by the
transform-uppercase
plug-in with descriptions of possible causes.
No errors generated.
Если не указано иное, контент на этой странице предоставляется по лицензии Creative Commons "С указанием авторства 4.0", а примеры кода – по лицензии Apache 2.0. Подробнее об этом написано в правилах сайта. Java – это зарегистрированный товарный знак корпорации Oracle и ее аффилированных лиц.
Последнее обновление: 2024-10-29 UTC.