Quicknode biedt foutlogboeken voor uw RPC-eindpunten. U kunt problemen eenvoudig opsporen en oplossen door gedetailleerde foutinformatie rechtstreeks vanuit uw dashboard te bekijken.
HTTP-foutcodes
Laten we eens kijken naar de veelvoorkomende HTTP-foutcodes die je kunt tegenkomen, wat ze betekenen en wat je kunt doen om ze te voorkomen.
400Ongeldig verzoek
Onjuist type HTTP-verzoek (bijvoorbeeld GET in plaats van POST) of ongeldige tekens
401Niet-geautoriseerd
Dit kan gebeuren wanneer aan één of meerdere beveiligingsvereisten niet wordt voldaan, zoals onjuiste token-authenticatie, een IP-adres dat niet op de whitelist staat, een ongeldig JWT, enzovoort.
403Toegang geweigerd
Eindpunt uitgeschakeld (een van de redenen hiervoor zou een achterstallige betaling kunnen zijn)
403Toegankelijk - aangepaste trace niet gevonden
Aangepaste tracecode staat niet op de witte lijst (Dien een ticket in om het goedkeuringsproces te doorlopen)
404Niet gevonden
Onjuiste URL of onjuiste methode
413Inhoud te groot
De inhoud van het verzoek is te groot
413Verzoekentiteit te groot
eth_getLogs en eth_newFilter zijn beperkt tot een bereik van 10.000 blokken. Bij het opvragen van logbestanden en gebeurtenissen hanteren we een limiet van 10.000 blokken.
429Te veel verzoeken
Het aantal verzoeken per seconde (RPS) ligt hoger dan wat volgens uw abonnement is toegestaan. Lees meer over de 429-fouten in onze ondersteuningsdocumentatie.
500Interne serverfout
Dien een ticket in, zodat het ondersteuningsteam de fouten zo snel mogelijk kan bekijken
503Dienst niet beschikbaar
Dien een ticket in, zodat het ondersteuningsteam de fouten zo snel mogelijk kan bekijken
Voorbeeld van een HTTP-foutcode
Het onderstaande codefragment is een voorbeeld van foutcode 429.
{
"jsonrpc": "2.0",
"error": {
"code": 429,
"message": "The requests per second (RPS) of your requests are higher than your plan allows."
},
"id": 1
}
Morph RPC Error Codes
Let's look at the common Morph RPC Error Codes you can encounter, what they mean and what you can do to prevent them.
-32000Koptekst niet gevonden / Blok niet gevonden
Het opgevraagde blok bestaat niet op het knooppunt. Het bloknummer is ongeldig of het knooppunt dat je benadert, is nog niet gesynchroniseerd. Gebruik een herhalingsmechanisme met een oplopende time-out.
-32000Stapellimiet bereikt
Meestal een fout/bug in een smart contract – stacklimiet bereikt: 1024 (1023)
-32000De method handler is gecrasht
Interne fout van de blockchain-client; dit kan een bug in de client zijn. Dien een ticket in, zodat we de nodes nog eens kunnen controleren
-32000Time-out bij uitvoering
Voeg de parameter `timeout` toe aan je verzoek om de standaard time-out van de client te overschrijven.
-32000Nonce te laag
De nonce-waarde die in je transactie is opgegeven, is lager dan de volgende geldige nonce voor de rekening van de afzender.
-32000Filter niet gevonden
De time-out voor het filter is overschreden; je moet het filter opnieuw aanmaken.
-32001Bron niet gevonden
De opgevraagde bron bestaat niet of is niet beschikbaar.
-32002Bron niet beschikbaar
De opgevraagde bron is tijdelijk of permanent niet beschikbaar.
-32003Transactie geweigerd
De transactie kon niet worden aangemaakt vanwege een validatiefout of onvoldoende middelen.
-32004Methode wordt niet ondersteund
De gevraagde methode is niet geïmplementeerd of wordt niet ondersteund door de server.
-32005Limiet overschreden
Het verzoek overschrijdt de toegestane limiet of het toegestane quotum.
-32006JSON-RPC-versie wordt niet ondersteund
De opgegeven JSON-RPC-versie wordt niet ondersteund door de server.
-32009Beperkt aantal traceerverzoeken
We hebben de debug- en trace-methode beperkt tot een bepaald aantal verzoeken per seconde (RPS) om te voorkomen dat de knooppunten overbelast raken
-32010De transactiekosten overschrijden de gaslimiet
De gaslimiet is te laag ingesteld
-32011Netwerkfout
Deze fout treedt op wanneer er een probleem is met de verbinding tussen de client en de server, zoals een time-out of een verbroken verbinding
-32015Fout bij het uitvoeren van een VM
Fout bij de uitvoering van een smart contract
-32600Ongeldig verzoek
Het JSON-verzoek is onjuist opgebouwd of er ontbreken verplichte velden. Zorg ervoor dat het aan de vereiste indeling voldoet.
-32601Methode niet gevonden
Meestal gaat het om een typefout in de naam van de methode; controleer op spelfouten
-32601Het verzoek kon niet worden geparseerd
Onjuiste inhoud van het verzoek; controleer de parameters van de methode nogmaals
Onjuist verzoek; de 0x ontbreekt in het adres. De hex
-32602Grens van blokbereik overschreden
eth_getLogs en eth_newFilter zijn beperkt tot een bereik van 10.000 blokken. Lees een uitgebreide uitleg hierover in onze ondersteuningsdocumentatie.
-32603Interne JSON-RPC-fout
Deze fout wordt meestal veroorzaakt door een beschadigde of ongeldige payload
-32612Aangepaste sporen worden geblokkeerd
Dien een verzoek in om aangepaste tracings in te schakelen.
-32613Aangepaste trace is niet toegestaan
Aangepaste trace niet gevonden in de lijst met toegestane aangepaste traces. Dien een verzoek in om deze trace op de witte lijst te laten plaatsen.
-32700Parseerfout
Er is ongeldige JSON ontvangen. De server heeft een fout vastgesteld bij het parseren van de JSON-tekst
3Uitvoering ongedaan gemaakt
De transactie is tijdens de uitvoering teruggedraaid, waarschijnlijk als gevolg van niet-voldane voorwaarden, onvoldoende gas of een fout in het contract
Morph RPC Error Code Example
Het onderstaande codefragment is een voorbeeld van foutcode -32601.
{
"jsonrpc": "2.0",
"id": 1,
"error": {
"code": -32601,
"message": "the method eth_randomMethod does not exist/is not available"
}
}
De hierboven gedefinieerde RPC-fouten vormen een overzicht van veelvoorkomende fouten die je kunt tegenkomen tijdens het ontwikkelen op blockchains zoals ETH, BSC, Polygon, enz. Deze blockchains draaien op meerdere clients met hun eigen foutdefinities. Je kunt de fouten die in de broncode van de node-client worden genoemd ook hier bekijken:
Quicknode biedt logbestanden voor je RPC-eindpunten om je te helpen bij het opsporen van problemen. Je kunt de logbestanden rechtstreeks in je Quicknode-dashboard bekijken door naar het volgende te gaan:
Eindpunten in de zijbalk
Uw eindpunt selecteren
Het tabblad 'Logs ' openen
Je kunt logbestanden filteren op tijdsperiode, reactietype, methode en netwerk.
Wat wordt geregistreerd
Verzoeken aan het eindpunt Verzoeken die naar uw eindpunt zijn verzonden, inclusief de HTTP-status, de verzoekmethode, de RPC-methode of het pad, en de tijdstempel.
Foutdetails Indien beschikbaar, bevatten mislukte verzoeken foutdetails zoals RPC-foutcodes, de inhoud van verzoeken en antwoorden, en links naar relevante documentatie.
Beperkingen bij het loggen
De beschikbaarheid van logbestanden kan variëren afhankelijk van de methode, het type reactie, het netwerk en het abonnement. Om optimale prestaties van de eindpunten te waarborgen, werkt het loggen op basis van ‘best effort’. Sommige logbestanden kunnen tijdens periodes met veel verkeer worden weggelaten om een lage latentie te behouden.
Bewaring en toegang
Bij de Build- en Scale-abonnementen is toegang tot het dashboard inbegrepen, met standaard bewaartermijnen voor logbestanden. Enterprise-abonnementen bieden langere bewaartermijnen en programmatische API-toegang voor het ophalen van logbestanden.
Mocht u andere foutcodes tegenkomen, laat het ons dan weten door een ticket in te dienen. We helpen u graag verder