Você está visualizando a documentação do Apigee Edge.
  Acesse a
      documentação da
      Apigee X. info
Este tópico descreve os erros e avisos que você pode encontrar com o Edge Microgateway.
Erros gerais do aplicativo
HTTP 500, failed in error handler: a maioria dos erros terá esse número, assim como alguns erros retornados de destinos. Especificamente, errors-middleware.js é usado em todo o módulo microgateway-core. Quando usado, ele grava os statusCodes no registro usando o Edge Microgateway
logger object: logger.error(err, 'failed in error handler');. Para códigos recebidos de destinos entre 100 e 300, errors-middleware.js reescreve o statusCode para 500 para retorno ao cliente.HTTP 404: esse status pode ser produzido como um stack trace com a mensagem
no match found for [API_path_name].
Erros e avisos do módulo
É possível usar essas informações para configurar alertas que ajudam a monitorar e gerenciar a implantação do Edge Microgateway.
Os termos a seguir, que aparecem na referência de erro em "Gerenciador", indicam como os vários erros são processados no Edge Microgateway.
- afirmação: normalmente, o Edge Microgateway é interrompido quando uma avaliação de afirmação falha. No entanto, isso nem sempre acontece, já que "asserções" geram exceções que podem ser capturadas.
 - throws: possível interrupção do sistema.
 - callback: o erro é transmitido para um callback, e o sistema pode continuar.
 
| Tipo | Mensagem | Handler | Observações | 
|---|---|---|---|
          Módulo de microgateway | 
      |||
| erro | org é obrigatório | declarar | assert(options.org,"org is required"); | 
| erro | O env é obrigatório | declarar | assert(options.env,"env is required") | 
| erro | O nome de usuário é obrigatório | declarar | assert(options.username || options.token,"username is required"); | 
| erro | A senha é obrigatória | declarar | assert(options.password || options.token,"password is required") | 
| erro | org é obrigatório | declarar | assert(options.org,"org is required"); | 
| erro | O env é obrigatório | declarar | assert(options.env,"env is required") | 
| erro | O nome de usuário é obrigatório | declarar | assert(options.username || options.token,"username is required"); | 
| erro | A senha é obrigatória | declarar | assert(options.password || options.token,"password is required") | 
| erro | org é obrigatório | declarar | assert(options.org,"org is required"); | 
| erro | O env é obrigatório | declarar | assert(options.env,"env is required") | 
| erro | org é obrigatório | declarar | assert(options.org,"org is required"); | 
| erro | O env é obrigatório | declarar | assert(options.env,"env is required") | 
| erro | O nome de usuário é obrigatório | declarar | assert(options.username, 'username is required'); | 
| erro | A senha é obrigatória | declarar | assert(options.password, 'password is required'); | 
| erro | org é obrigatório | declarar | assert(options.org, 'org is required'); | 
| erro | O env é obrigatório | declarar | assert(options.env, 'env is required'); | 
| erro | precisa ter um arquivo de destino atribuído | declarar | assert(targetFile, 'must have an assigned target file') | 
| erro | precisa ter uma chave | declarar | assert(chave, 'must have a key'); | 
| erro | precisa ter um secret | declarar | assert(secret, 'must have a secret'); | 
| erro | O diretório precisa ser configurado | declarar | assert(dir, 'dir must be configured') | 
| erro | O callback precisa estar presente. | declarar | assert(callback, 'callback must be present') | 
| erro | O nome de usuário é obrigatório | declarar | assert(options.username, 'username is required'); | 
| erro | A senha é obrigatória | declarar | assert(options.password, 'password is required'); | 
| erro | org é obrigatório | declarar | assert(options.org, 'org is required'); | 
| erro | O env é obrigatório | declarar | assert(options.env, 'env is required'); | 
| erro | O runtimeUrl é obrigatório. | declarar | assert(options.runtimeUrl, 'runtimeUrl is required'); | 
| erro | O mgmtUrl é obrigatório | declarar | assert(options.mgmtUrl, 'mgmtUrl é obrigatório'); | 
| erro | O arquivo é obrigatório | declarar | assert(options.file,"file is required") | 
| erro | precisa ter uma meta | declarar | assert(options.target, 'must have target'); | 
| erro | plug-ins não configurados | declarar | assert(config.edgemicro.plugins, 'plugins not configured'); | 
| erro | O diretório de plug-ins não existe: + pluginDir | declarar | assert(fs.existsSync(pluginDir), 'plugin dir does not exist: ' + pluginDir); | 
| erro | O diretório de plug-ins não é um diretório: + pluginDir | declarar | assert(stat.isDirectory(), 'plugin dir is not a directory: ' + pluginDir); | 
| erro | error reading plugin dir: + pluginDir | declarar | assert(dirs, 'error reading plugin dir: ' + pluginDir); | 
| erro | precisa ter um token | declarar | assert(token, 'must have a token'); | 
| erro | configpath não pode ficar em branco | declarar | assert(config, 'configpath can't be empty'); | 
| erro | precisa ter EDGEMICRO_KEY | declarar | assert(chave, 'must have EDGEMICRO_KEY'); | 
| erro | precisa ter EDGEMICRO_SECRET | declarar | assert(secret, 'must have EDGEMICRO_SECRET'); | 
| erro | A configuração não existe | lança | relacionado ao arquivo yaml | 
| erro | O edgemicro parece já estar em execução. | console.error | Tentar substituir um arquivo .sock | 
| erro | Falha ao verificar se há mudanças na configuração. Vamos tentar de novo depois de | console.error | problema com a comunicação de borda | 
| erro | Se o servidor não estiver em execução, talvez seja devido ao desligamento incorreto da inicialização anterior. | console.error | |
| erro | %s ausente, execute | console.error | Missing (.*), Please run | 
| erro | Não foi possível recarregar o edgemicro | console.error | nível de comando | 
| erro | Falha ao interromper o Edgemicro | console.error | Nível de comando | 
| erro | "Tente remover " + ipcPath + " e começar de novo" | console.error | |
| erro | "cache configuration" + cache + " does not exist. exiting." | console.error | |
| erro | O arquivo de configuração não pôde ser gravado: | console.error | A configuração vai falhar. | 
| erro | O arquivo de configuração não foi transferido: | console.error | A configuração vai falhar. | 
| erro | Falha ao iniciar o micro de borda | console.error | Ele não deve estar em execução | 
| erro | O edgemicro não está em execução. | console.error | Verifique se o processo não está listado | 
| erro | O env é obrigatório. | console.error | Variáveis de ambiente necessárias para a execução | 
| erro | error - editing apiproxy Callout.xml | console.error | Acesso ao arquivo | 
| erro | error - editing apiproxy default.xml | console.error | Acesso ao arquivo | 
| erro | Erro ao verificar o certificado. Instalando um novo certificado. | console.error | A chave pública não pode ser usada | 
| erro | error retrieving region for org | console.error | key-gen.js, cert-lib.js e private.js | 
| erro | Erro ao fazer upload de credenciais | console.error | Não é possível sincronizar a chave pública com o Edge | 
| erro | com falha | console.error | key-gen.js | 
| erro | Falha ao inicializar o arquivo configpath %s | console.error | A configuração não está carregando | 
| erro | resposta inválida da API da região | console.error | key-gen.js, cert-lib.js e private.js | 
| erro | A chave é obrigatória. | console.error | Parâmetro | 
| erro | org é obrigatório | console.error | Parâmetro | 
| erro | A porta não está disponível. | console.error | Parâmetro | 
| erro | O secret é obrigatório | console.error | Parâmetro | 
| erro | O protocolo de URL não é compatível: | console.error | As informações de configuração indicam um protocolo de Internet que não está no escopo do Edge Microgateway | 
| erro | Caso negativo de verificação de análise: FALHA | console.error | Possível falha/erro | 
| erro | Verificação de análises com payload: FALHA | console.error | Possível falha/erro | 
| erro | Verificação da disponibilidade do URL de inicialização:FALHA | console.error | Possível falha/erro | 
| erro | Verificação da disponibilidade de jwt_public_key: FALHA | console.error | Possível falha/erro | 
| erro | Verificação da disponibilidade dos produtos: FALHA | console.error | Possível falha/erro | 
| erro | Verificação da cota com produtos configurados: FALHA | console.error | Possível falha/erro | 
| warn | Falha ao recuperar a configuração do gateway. Continuando, tentará a cópia em cache. | console.error | |
| warn | O KVM já existe na sua organização | console.log | |
| warn | já está implantado | console.log | |
| warn | O plug-in sequencial não foi encontrado: | console.warn | |
| warn | pluginDir %s não existe | console.log | pluginDir (.*) não existe | 
          Módulo microgateway-core | 
      |||
| erro | config not initialized | declarar | assert(config, 'config not initialized') | 
| erro | precisa ter uma configuração | declarar | assert(config, ' must have a config') | 
| erro | precisa ter config | declarar | assert(config, 'must have config') | 
| erro | A configuração precisa ter um uid | declarar | assert(config.uid, 'config must have uid'); | 
| erro | config.edgemicro.logging precisa estar na config | declarar | assert(logConfig, 'must have config.edgemicro.logging in config'); | 
| erro | precisa ter o método de solicitação | declarar | assert(httpLibrary.request, 'must have request method'); | 
| erro | precisa ter o plug-in carregado na memória | declarar | assert(options.plugin, "must have plugin loaded in memory"); | 
| erro | init precisa ser uma função | declarar | assert(_.isFunction(options.plugin.init), 'init must be a function'); | 
| erro | precisa ter o nome do plug-in | declarar | assert(options.pluginName, "must have plugin name"); | 
| erro | Ignorar manipuladores de plug-in inválidos + nome | declarar | assert(_.isObject(middleware), 'ignoring invalid plugin handlers ' + name); | 
| erro | options precisa conter config | declarar | assert(config, 'options must contain config') | 
| erro | O plug-in precisa ter um nome | declarar | assert(name,"plugin must have a name") | 
| erro | O nome precisa ser uma string. | declarar | assert(_.isString(name),"name must be a string"); | 
| erro | O plug-in precisa ser uma função. | declarar | assert(_.isFunction(plugin),"plugin must be a function(config,logger,stats){return {onresponse:function(req,res,data,next){}}}"); | 
| erro | precisa ter uma chave | declarar | assert(chave, 'must have a key'); | 
| erro | precisa ter um secret | declarar | assert(secret, 'must have a secret'); | 
| erro | precisa ter um diretório de configuração de origem | declarar | assert(source, 'must have a source config directory'); | 
| erro | Erro ao carregar o plug-in | console.error | Plug-in não carregado | 
| erro | Falha no gerenciador de erros | callback | Função HTTP server.on() | 
| erro | O tamanho do cabeçalho é maior do que o permitido | Erro HTTP | Não executa o plug-in | 
| erro | a resposta foi concluída antes que o trabalho pudesse ser feito | logger.error | O plug-in de destino não é executado | 
| erro | O gerenciador gerou uma exceção. | callback | Capturar erro do plug-in (catch) | 
| erro | error starting edge micro | callback | O Edge Microgateway não é iniciado | 
| erro | O plug-in precisa ser uma função. | lança | |
| warn | console.error | alerta | Registro de escrita | 
| warn | Erro de targetRequest | invocar o tratamento de erros de destino | Erro do cliente HTTP na conexão com o destino | 
| warn | Erro de targetResponse | invocar o tratamento de erros de destino | Erro do servidor de destino HTTP na conexão com o destino, conforme visto no cliente | 
          Módulo microgateway-config | 
      |||
| erro | allow_message | declarar | assert(+config.quota.allow > 0, allow_message); | 
| erro | A configuração não existe | lança | Arquivo yaml de configuração | 
| erro | config está vazia | lança | Arquivo yaml de configuração | 
| erro | config não é um arquivo | lança | Arquivo yaml de configuração | 
| erro | A configuração não está definida. | declarar | assert(config, 'config is not defined'); | 
| erro | config.analytics.batchSize é inválido | declarar | assert(+config.analytics.batchSize > 0, 'config.analytics.batchSize is invalid'); | 
| erro | config.analytics.batchSize não é um número | declarar | assert(typeof config.analytics.batchSize === 'number', 'config.analytics.batchSize is not a number'); | 
| erro | config.analytics.bufferSize é inválido | declarar | assert(+config.analytics.bufferSize > 0, 'config.analytics.bufferSize is invalid'); | 
| erro | config.analytics.bufferSize não é um número | declarar | assert(typeof config.analytics.bufferSize === 'number', 'config.analytics.bufferSize is not a number'); | 
| erro | config.analytics.flushInterval é inválido | declarar | assert(+config.analytics.flushInterval > 0, 'config.analytics.flushInterval is invalid'); | 
| erro | config.analytics.flushInterval não é um número | declarar | assert(typeof config.analytics.flushInterval === 'number', 'config.analytics.flushInterval is not a number'); | 
| erro | config.analytics.proxy não é "dummy" | declarar | assert(config.analytics.proxy === 'dummy', 'config.analytics.proxy is not "dummy"'); | 
| erro | config.analytics.proxy não está definido | declarar | assert(config.analytics.proxy, 'config.analytics.proxy is not defined'); | 
| erro | config.analytics.proxy_revision não é um número | declarar | assert(typeof config.analytics.proxy_revision === 'number', 'config.analytics.proxy_revision is not a number'); | 
| erro | config.analytics.proxy_revision não está definido | declarar | assert(config.analytics.proxy_revision, 'config.analytics.proxy_revision is not defined'); | 
| erro | config.analytics.source não é "microgateway" | declarar | assert(config.analytics.source === 'microgateway', 'config.analytics.source is not "microgateway"'); | 
| erro | config.analytics.source não está definido | declarar | assert(config.analytics.source, 'config.analytics.source is not defined'); | 
| erro | config.analytics.uri não é uma string | declarar | assert(typeof config.analytics.uri === 'string', 'config.analytics.uri is not a string'); | 
| erro | config.analytics.uri não está definido | declarar | assert(config.analytics.uri, 'config.analytics.uri is not defined'); | 
| erro | config.apikeys.public_key não está definido | declarar | assert(typeof config.apikeys.public_key === 'string', 'config.apikeys.public_key is not defined'); | 
| erro | config.edge_config não está definido | declarar | assert(config.edge_config, 'config.edge_config is not defined'); | 
| erro | config.edge_config.bootstrap não está definido | declarar | assert(config.edge_config.bootstrap, 'config.edge_config.bootstrap is not defined'); | 
| erro | config.edge_config.jwt_public_key não está definido | declarar | assert(config.edge_config.jwt_public_key, 'config.edge_config.jwt_public_key is not defined'); | 
| erro | config.edge_config.proxy precisa ser definido se config.edge_config.proxy_tunnel estiver definido | declarar | assert(typeof config.edge_config.proxy !== 'undefined', 'config.edge_config.proxy must be defined if config.edge_config.proxy_tunnel is defined'); | 
| erro | config.edge_config.proxy_tunnel não é um booleano. | declarar | assert(typeof config.edge_config.proxy_tunnel === 'boolean', 'config.edge_config.proxy_tunnel is not a boolean'); | 
| erro | config.edge_config.refresh_interval não é um número | declarar | assert(typeof config.edge_config.refresh_interval === 'number', 'config.edge_config.refresh_interval is not a number'); | 
| erro | config.edge_config.refresh_interval é muito pequeno (mínimo de 1 hora) | declarar | assert(config.edge_config.refresh_interval >= 3600000, 'config.edge_config.refresh_interval is too small (min 1h)'); | 
| erro | config.edge_config.retry_interval não é um número | declarar | assert(typeof config.edge_config.retry_interval === 'number', 'config.edge_config.retry_interval is not a number'); | 
| erro | config.edge_config.retry_interval é muito pequeno (mínimo de 5 segundos). | declarar | assert(config.edge_config.retry_interval >= 5000, 'config.edge_config.retry_interval is too small (min 5s)'); | 
| erro | config.edgemicro não está definido | declarar | assert(config.edgemicro, 'config.edgemicro is not defined'); | 
| erro | config.edgemicro.logging não está definido | declarar | assert(config.edgemicro.logging, 'config.edgemicro.logging is not defined'); | 
| erro | config.edgemicro.logging.dir não está definido | declarar | if (!config.edgemicro.logging.to_console) assert(config.edgemicro.logging.dir, 'config.edgemicro.logging.dir is not defined'); | 
| erro | config.edgemicro.logging.level não está definido | declarar | assert(config.edgemicro.logging.level, 'config.edgemicro.logging.level is not defined'); | 
| erro | config.edgemicro.max_connections não é um número | declarar | assert(typeof config.edgemicro.max_connections === 'number', 'config.edgemicro.max_connections is not a number'); | 
| erro | config.edgemicro.max_connections não está definido | declarar | assert(config.edgemicro.max_connections, 'config.edgemicro.max_connections is not defined'); | 
| erro | config.edgemicro.plugins.sequence não é uma matriz | declarar | assert(Array.isArray(config.edgemicro.plugins.sequence), 'config.edgemicro.plugins.sequence is not an array'); | 
| erro | config.edgemicro.port não está definido | declarar | assert(config.edgemicro.port, 'config.edgemicro.port is not defined'); | 
| erro | config.oauth.allowInvalidAuthorization não está definido | declarar | assert(typeof config.oauth.allowInvalidAuthorization === 'boolean', 'config.oauth.allowInvalidAuthorization is not defined'); | 
| erro | config.oauth.allowNoAuthorization não está definido | declarar | assert(typeof config.oauth.allowNoAuthorization === 'boolean', 'config.oauth.allowNoAuthorization is not defined'); | 
| erro | config.oauth.public_key não está definido | declarar | assert(typeof config.oauth.public_key === 'string', 'config.oauth.public_key is not defined'); | 
| erro | config.oauthv2.public_key não está definido | declarar | assert(typeof config.oauthv2.public_key === 'string', 'config.oauthv2.public_key is not defined'); | 
| erro | config.proxies não está definido | declarar | assert(config.proxies, 'config.proxies is not defined'); | 
| erro | config.proxy[ + index + ].base_path não está definido | declarar | assert(proxy.base_path, 'config.proxy[' + index + '].base_path is not defined'); | 
| erro | config.proxy[ + index + ].max_connections não é um número | declarar | assert(typeof proxy.max_connections === 'number', 'config.proxy[' + index + '].max_connections is not a number'); | 
| erro | config.proxy[ + index + ].max_connections não está definido | declarar | assert(proxy.max_connections, 'config.proxy[' + index + '].max_connections is not defined'); | 
| erro | config.proxy[ + index + ].name não está definido | declarar | assert(proxy.name, 'config.proxy[' + index + '].name is not defined'); | 
| erro | config.proxy[ + index + ].proxy_name não está definido | declarar | assert(proxy.target_name, 'config.proxy[' + index + '].proxy_name is not defined'); | 
| erro | config.proxy[ + index + ].revision não está definido | declarar | assert(proxy.revision, 'config.proxy[' + index + '].revision is not defined'); | 
| erro | config.proxy[ + index + ].url não está definido | declarar | assert(proxy.url, 'config.proxy[' + index + '].url is not defined'); | 
| erro | config.quota.allow não é um número | declarar | assert(typeof config.quota.allow === 'number', 'config.quota.allow is not a number'); | 
| erro | config.quota.allow não está definido | declarar | assert(config.quota.allow, 'config.quota.allow is not defined'); | 
| erro | config.quota.interval não é um número | declarar | assert(typeof config.quota.interval === 'number', 'config.quota.interval is not a number'); | 
| erro | config.quota.interval não está definido | declarar | assert(config.quota.interval, 'config.quota.interval is not defined'); | 
| erro | config.spikearrest não está definido | declarar | assert(config.spikearrest, 'config.spikearrest is not defined'); | 
| erro | config.spikearrest.allow é inválido | declarar | assert(+config.spikearrest.allow > 0, 'config.spikearrest.allow is invalid'); | 
| erro | config.spikearrest.allow não é um número | declarar | assert(typeof config.spikearrest.allow === 'number', 'config.spikearrest.allow is not a number'); | 
| erro | config.spikearrest.allow não está definido | declarar | assert(config.spikearrest.allow, 'config.spikearrest.allow is not defined'); | 
| erro | config.spikearrest.bufferSize é inválido | declarar | assert(+config.spikearrest.bufferSize > 0, 'config.spikearrest.bufferSize is invalid'); | 
| erro | config.spikearrest.bufferSize não é um número | declarar | assert(typeof config.spikearrest.bufferSize === 'number', 'config.spikearrest.bufferSize is not a number'); | 
| erro | config.spikearrest.timeUnit não está definido | declarar | assert(config.spikearrest.timeUnit, 'config.spikearrest.timeUnit is not defined'); | 
| erro | ERRO FATAL: erro ao analisar a lista de produtos baixados | callback | |
| erro | ERRO FATAL: erro ao analisar a lista de proxies transferidos por download | callback | |
| erro | DETECTED PRODUCT MISCONFIGURATION ERROR | console.error | Seguido por console.warn('using old cached configuration'); | 
| erro | Erro ao ler a configuração de | lança | Arquivo yaml de configuração | 
| erro | Erro ao salvar a configuração em | callback | Arquivo yaml de configuração | 
| erro | fatal: cached config not available, unable to continue | callback | |
| erro | interval_message | declarar | assert(+config.quota.interval > 0, interval_message); | 
| erro | Protocolo inválido para config.edge_config.proxy (esperado http: ou https:: + proxy_url.protocol) | declarar | assert(proxy_url.protocol === 'http:' || proxy_url.protocol === 'https:', 'invalid protocol for config.edge_config.proxy (expected http: or https:): ' + proxy_url.protocol); | 
| erro | Host de proxy inválido para config.edge_config.proxy | declarar | assert(proxy_url.hostname, 'invalid proxy host for config.edge_config.proxy: ' + proxy_url.hostname); | 
| erro | Parece que o micro do Edge não foi configurado. Consulte o guia do administrador. | callback | Resultado: falha ao carregar a configuração | 
| erro | A chave está em branco | declarar | assert(keys.key, 'key is missing'); | 
| erro | precisa ter configDir | declarar | assert(configDir, 'must have configDir') | 
| erro | opções obrigatórias | declarar | assert(options, 'must have options'); | 
| erro | precisa ter origem | declarar | assert(source, 'must have source') | 
| erro | precisa ter uma origem para carregar | declarar | assert(options.source, 'must have source to load from') | 
| erro | precisa ter targetFile | declarar | assert(fileName, 'must have targetFile') | 
| erro | As opções não podem ser nulas. | declarar | assert(options, 'options cannot be null'); | 
| erro | options.keys não pode ser nulo | declarar | assert(options.keys, 'options.keys cannot be null'); | 
| erro | port_message | declarar | assert(+config.edgemicro.port < 65536, port_message); | 
| erro | Os produtos precisam ser uma matriz | declarar | assert(Array.isArray(products), 'products should be an array'); | 
| erro | "Os proxies para o produto ' + produto + ' precisam ser uma matriz' | declarar | assert(Array.isArray(product.proxies), 'proxies for product ' + product + ' should be an array'); | 
| erro | secret está ausente | declarar | assert(keys.secret, 'secret is missing'); | 
| erro | target não está definido | declarar | assert(target, 'target is not set'); | 
| warn | Erro ao fazer o download da configuração. Verifique a configuração de inicialização. | console.warn | |
| warn | Falha ao fazer o download de jwt_public_key | console.warn | |
| warn | As chaves jwk não estão ativadas | console.warn | |
| warn | message, 'download from', url, 'returned' | console.warn | Pesquisar: (.*)\sdownload from\s(.*)\sreturned | 
| warn | Nenhum microproduto de borda encontrado na resposta | console.warn | |
| warn | Nenhum microproxy de borda foi encontrado na organização | console.warn | |
| warn | Nenhum microproxy de borda foi encontrado na resposta | console.warn | |
| warn | Nenhum produto encontrado na organização | console.warn | |
| warn | Nenhum produto encontrado na resposta | console.warn | |
| warn | usando a configuração antiga armazenada em cache | console.warn | |
          Módulo microgateway-plugins | 
      |||
| erro | A configuração não existe | lança | Relacionado ao arquivo yaml | 
| erro | apikey | Resposta HTTP | Falhas no plug-in apiky | 
| erro | bauth | Resposta HTTP | Falhas no plug-in bauth | 
| erro | extauth | Resposta HTTP | Falhas no plug-in extauth | 
| erro | Oauth | Resposta HTTP | Falhas no plug-in do OAuth | 
| warn | Ocorreu um erro ao processar as análises da Apigee. Como permitir que o processamento da solicitação continue | logger.error | |
| warn | ignorando o erro | console.warn | plug-ins apikeys, oauth e oauthv2 | 
| warn | Erro ao analisar o JWT: | console.warn | |
| warn | O objeto de resposta do oath não tem setHeader | console.warn | O erro de parâmetro oauth indica que alguns erros não serão informados. | 
| warn | O objeto de resposta do oath não é fornecido pelo ambiente de execução | console.warn | Erro no parâmetro OAuth | 
| warn | O objeto de estatísticas de oath não é fornecido pelo ambiente de execução. | console.warn | Erro no parâmetro OAuth | 
          Módulo apigeetool-node | 
      |||
| erro | Falha na exclusão do cache com o código de status %d', res.statusCode | callback | Lançado em deletecache.js. Código de status do Apigee Edge. Transmite um erro de stack trace para o callback com esta mensagem: done(new Error(errMsg)); | 
| erro | Falha ao excluir o produto com o código de status %d', res.statusCode | callback | Lançada em deleteproduct.js. Código de status do Apigee Edge. Transmite um erro de stack trace para o callback com esta mensagem: done(new Error(errMsg)); | 
| erro | org, api e revisão precisam ser especificados. | callback | Lançado em fetchproxy.js. Erro de configuração. | 
| erro | Recebemos o erro %d ao buscar o proxy: %j | callback | Lançado em fetchproxy.js. Código de status diferente de 200. | 
| erro | Falha ao criar o app com o código de status %d | callback | Lançado em createapp.js. Transmite todos os erros de volta aos callbacks como erros de stack trace. Não faz impressões de console ou entradas de registro. | 
| erro | command + ' falhou com o código de status %d | callback | Lançado em command-utils.js. Para qualquer comando analisado e transmitido para esse módulo, qualquer código que não seja 200 ou 201 vai gerar uma mensagem de erro. Formata esta mensagem, mas não a imprime. Transmite um erro de stack trace com a mensagem de volta aos callbacks. | 
| erro | Recebemos o erro %d ao buscar o fluxo compartilhado: %s | callback | Lançado em fetchsharedflow.js. Para qualquer status HTTP que não seja 200. Se ele for bem-sucedido, mas não conseguir
     gravar um arquivo, ele será gravado no console: Falha ao gravar o arquivo Texto de erro: [stack_trace_error]  | 
  
| erro | Falha ao criar KeySecret com o código de status %d', res.statusCode | callback | Lançado em createappkey.js. Para códigos de status HTTP do Apigee Edge que não sejam 200 ou 201. | 
| erro | Falha ao criar o cache com o código de status %d', res.statusCode | callback | Lançado em createcache.js. Para códigos de status HTTP do Apigee Edge que não sejam 200 ou 201. | 
| erro | Falha ao criar o produto com o código de status %d', res.statusCode | callback | Lançado em createproduct.js. Para códigos de status HTTP do Apigee Edge que não são 201. Se o status HTTP for 201, mas a resposta incluir JSON de erro, o JSON de erro será encaminhado para o callback. | 
| erro | Delete App failed with status code %d', res.statusCode | callback | Lançado em deleteapp.js. Para códigos de status HTTP do Apigee Edge que não são 200. Se o status HTTP for 200, mas a resposta incluir JSON de erro, o JSON de erro será encaminhado para o callback. | 
| erro | Falha na criação do desenvolvedor com o código de status %d', res.statusCode | callback | Lançado em createdeveloper.js. Para códigos de status HTTP do Apigee Edge que não são 201. Se o status HTTP for 201, mas a resposta incluir JSON de erro, o JSON de erro será encaminhado para o callback. | 
| erro | Delete Developer failed with status code %d', res.statusCode | callback | Gerado em deletedeveloper.js. Para códigos de status HTTP do Apigee Edge que não são 200. Se o status HTTP for 200, mas a resposta incluir JSON de erro, o JSON de erro será encaminhado para o callback. | 
Erros de plug-in
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.