O Quicknode disponibiliza registos de erros para os seus pontos finais RPC. Identifique e resolva facilmente os problemas, consultando informações detalhadas sobre os erros diretamente a partir do seu painel de controlo.
Códigos de erro HTTP
Vamos ver os códigos de erro HTTP mais comuns com que se pode deparar, o que significam e o que pode fazer para os evitar.
400Erro de pedido
Tipo de pedido HTTP incorreto (por exemplo, utilização de GET em vez de POST) ou caracteres inválidos
401Não autorizado
Isto pode acontecer quando um ou vários requisitos de segurança não são cumpridos, tais como uma autenticação por token incorreta, um endereço IP que não consta da lista de endereços autorizados, um JWT inválido, etc.
403Acesso proibido
Terminal desativado (uma das razões para isso poderá ser um pagamento em atraso)
403Acesso proibido - rastreio personalizado não encontrado
O código de rastreio personalizado não consta da lista de permissões (Envie um pedido de assistência para que seja submetido ao processo de aprovação)
404Não encontrado
URL incorreta ou método incorreto
413Conteúdo demasiado grande
O corpo do pedido é demasiado grande
413Entidade da solicitação demasiado grande
As funções `eth_getLogs` e `eth_newFilter` estão limitadas a um intervalo de 10 000 blocos. Aplicamos um limite de 10 000 blocos ao solicitar registos e eventos.
429Demasiadas solicitações
O número de pedidos por segundo (RPS) das suas solicitações é superior ao permitido pelo seu plano. Saiba mais sobre os erros 429 na nossa documentação de apoio.
500Erro interno do servidor
Envie um pedido de assistência para que a equipa de apoio analise os erros o mais rapidamente possível
503Serviço indisponível
Envie um pedido de assistência para que a equipa de apoio analise os erros o mais rapidamente possível
Exemplo de código de erro HTTP
O fragmento de código abaixo é um exemplo do Código de Erro 429.
{
"jsonrpc": "2.0",
"error": {
"code": 429,
"message": "The requests per second (RPS) of your requests are higher than your plan allows."
},
"id": 1
}
Monad RPC Error Codes
Let's look at the common Monad RPC Error Codes you can encounter, what they mean and what you can do to prevent them.
-32000Cabeçalho não encontrado / Bloco não encontrado
O bloco solicitado não existe no nó. O número do bloco é inválido ou o nó a que está a aceder ainda não está sincronizado. Utilize um mecanismo de nova tentativa com um tempo de espera incremental
-32000Limite da pilha atingido
Normalmente, trata-se de um erro/falha no contrato inteligente — limite da pilha atingido: 1024 (1023)
-32000O manipulador de métodos falhou
Erro interno do cliente da blockchain, que pode ser um bug do cliente. Envie um ticket para que possamos verificar novamente os nós
-32000Tempo limite de execução
Adicione o parâmetro «timeout» à sua solicitação para substituir o tempo limite predefinido do cliente.
-32000O nonce é demasiado baixo
O valor do nonce especificado na sua transação é inferior ao próximo nonce válido para a conta do remetente.
-32000Filtro não encontrado
O tempo limite do filtro foi excedido; terá de recriar o filtro.
-32001Recurso não encontrado
O recurso solicitado não existe ou não está disponível.
-32002Recurso indisponível
O recurso solicitado está temporária ou permanentemente indisponível.
-32003Transação rejeitada
A transação não pôde ser criada devido a uma falha na validação ou a recursos insuficientes.
-32004Método não suportado
O método solicitado não está implementado nem é suportado pelo servidor.
-32005Limite excedido
O pedido excede o limite ou a quota permitida.
-32006Versão JSON-RPC não suportada
A versão do JSON-RPC especificada não é suportada pelo servidor.
-32009Pedidos de rastreio limitados
Limitámos o método de depuração e rastreio a um RPS específico para evitar a sobrecarga dos nós
-32010O custo da transação excede o limite de gás
O limite de gás está definido num valor demasiado baixo
-32011Erro de rede
Este erro ocorre quando existe um problema com a ligação entre o cliente e o servidor, como, por exemplo, um tempo limite esgotado ou uma perda de ligação
-32015Erro de execução da VM
Erro na execução do contrato inteligente
-32600Pedido inválido
A solicitação JSON está malformada ou faltam campos obrigatórios. Certifique-se de que segue o formato esperado
-32601Método não encontrado
Normalmente, trata-se de um erro ortográfico no nome do método; verifique se há erros ortográficos
-32601Falha na análise da solicitação
Corpo da solicitação incorreto; verifique novamente os parâmetros do método
-32602Parâmetros inválidos - falta o prefixo 0x
Pedido incorreto; falta o 0x no endereço. O valor hexadecimal
-32602Limite do intervalo de blocos excedido
As funções `eth_getLogs` e `eth_newFilter` estão limitadas a um intervalo de 10 000 blocos. Consulte uma explicação detalhada na nossa documentação de apoio.
-32603Erro interno do JSON-RPC
Este erro deve-se normalmente a uma carga útil incorreta ou inválida
-32612Os traços personalizados estão bloqueados
Envie um pedido para ativar os registos personalizados.
-32613Rastreio personalizado não permitido
O traço personalizado não foi encontrado na lista de traços personalizados permitidos. Envie um pedido para que este traço seja incluído na lista de traços permitidos.
-32700Erro de análise
Foi recebido um JSON inválido. O servidor encontrou um erro ao analisar o texto JSON
3Execução revertida
A transação foi revertida durante a execução, provavelmente devido a condições não cumpridas, gás insuficiente ou um erro no contrato
Monad RPC Error Code Example
O trecho de código abaixo é um exemplo do código de erro -32601.
{
"jsonrpc": "2.0",
"id": 1,
"error": {
"code": -32601,
"message": "the method eth_randomMethod does not exist/is not available"
}
}
Os erros RPC definidos acima constituem um conjunto de erros comuns com os quais se pode deparar durante o desenvolvimento em cadeias como a ETH, a BSC, a Polygon, etc. Estas cadeias funcionam em vários clientes, cada um com as suas próprias definições de erros. Também pode consultar aqui os erros mencionados no código-fonte do cliente do nó:
O Quicknode disponibiliza registos dos seus pontos finais RPC para o ajudar a diagnosticar problemas. Pode visualizar os registos diretamente no seu painel de controlo do Quicknode, acedendo a:
Pontos finais na barra lateral
Selecionar o seu terminal
Abrir o separador «Registos »
Pode filtrar os registos por intervalo de tempo, tipo de resposta, método e rede.
O que é registado
Pedidos ao ponto final Pedidos efetuados ao seu ponto final, incluindo o estado HTTP, o método de pedido, o método ou caminho RPC e a data e hora.
Detalhes do erro Sempre que disponíveis, os pedidos com falha incluem detalhes do erro, tais como códigos de erro RPC, corpos dos pedidos e das respostas e links para documentação relacionada.
Limitações da exploração florestal
A disponibilidade dos registos pode variar consoante o método, o tipo de resposta, a rede e o plano. Para manter um desempenho ideal do terminal, o registo funciona com base no princípio do «melhor esforço». Alguns registos podem ser descartados durante períodos de tráfego intenso, a fim de preservar uma baixa latência.
Conservação e acesso
Os planos «Build» e «Scale» incluem acesso ao painel de controlo com retenção padrão de registos. Os planos «Enterprise» oferecem períodos de retenção alargados e acesso programático via API para a recuperação de registos.