Comment déboguer le Code du noeud. JS utilise plusieurs outils

Noeud. JS est basé sur lamp;rsquoexécution JavaScript du même moteur V8 utilisé dans Google Chrome. Il est souvent utilisé pour créer des applications de terminal côté serveur et multiplateforme. Noeud. JS est devenu de plus en plus populaire au cours de la dernière décennie parce quamp;rsquoil est facile à installer, pratique, rapide et permet aux développeurs web clients damp;rsquoutiliser leurs compétences ailleurs. Cependant, le développement de logiciels reste une tâche complexe, tout comme votre code de noeud. JS échouera à un moment donné. Ce tutoriel montre une variété damp;rsquooutils pour aider à déboguer votre application et à trouver la cause du problème.
On entre. Deno est un autre type damp;rsquoexécution JavaScript. Comme un noeud. JS, mais met à jour et atténue certaines fissures et incohérences. Les outils et informations suivants samp;rsquoappliquent généralement aux applications deno et node. JS. Aperçu de la mise en service la mise en service fait référence à diverses méthodes de correction des défauts du logiciel. Réparer un bogue est généralement facile. La recherche des causes des erreurs peut être beaucoup plus complexe et prendre de nombreuses heures. Les sections suivantes décrivent les trois types damp;rsquoerreurs courantes que rencontrerez. Erreur de syntaxe votre code ne suit pas les règles de langue, par exemple lorsque omettez les parenthèses de fermeture ou que tapez des instructions incorrectement comme console. Hystérèse (X).
Un bon éditeur de code peut aider à identifier la FAQ: utiliser le type de code couleur pour contrôler les déclarations valides ou invalides pour les variables Remplir automatiquement la fonction et le nom de la variable mettre en évidence les parenthèses correspondantes indenter automatiquement le bloc de code ne peut pas implémenter la détection de code reconstruire un éditeur de liberté de fonction désordonné, comme vs Le Code et Atom ont un grand support pour les noeuds. JS, Javascript et Typescript (convertis en javascript). Les problèmes de syntaxe de base sont généralement détectés avant sa
Ça marche. Inspect (): console. Dir (myobject, {Depth: NULL, color: True}) Certains développeurs affirment que ne devriez jamais utiliser la console. Log (), parce que: éditez le Code, pouvez changer quelque chose ou oublier de le supprimer, si avez de meilleures options de débogage, namp;rsquoavez pas besoin de le faire. Ne faites pas confiance à ceux qui prétendent ne jamais utiliser la console. Log ()! Lamp;rsquoenregistrement est rapide et sale, mais parfois tout le monde lamp;rsquoutilise. Utilisez lamp;rsquoinstrument ou la technologie que . Il est plus important de corriger les bogues que de les trouver. Utilisation de systèmes damp;rsquoenregistrement de tiers les systèmes damp;rsquoenregistrement de tiers offrent des fonctions plus complexes comme le niveau de message, le niveau de détail, le tri, la sortie de fichier, lamp;rsquoanalyse, les rapports, etc. Les solutions populaires comprennent Cabin, loglevel, Morgan, Pine, signal, Storyboard, tracer et Winston. Lamp;rsquoutilisation du moteur JavaScript V8 Checker fournit un client de débogage qui peut être utilisé dans un noeud. JS. Utilisez Node Inspect pour démarrer une application, comme lamp;rsquoapplication Node Inspect. Le débogueur JS samp;rsquoarrête à la première ligne et affiche debug amp;gt: $Node Check. Mycode. JS 1 Nombre constant = 10 2 3 pour (i = 0 I amp;lt 5) I calcoli che non tengono conto della precedenza dellamp;039operatore, ad es 1+2*3 danno come risultato 7 anziché 9. È inevitabile: il tuo codice Node.js ad un certo punto fallirà. Scopri quali strumenti puoi utilizzare per eseguire il debug delle applicazioni e trova la causa di un problema proprio qui. Fai clic per twittare Errori di runtime (o di esecuzione). Un errore diventa evidente solo quando lamp;039applicazione viene eseguita, il che spesso porta a un arresto anomalo. Gli errori di runtime possono essere causati da:
Dividendo per una variabile che è stata impostata su zero Tentativo di accesso a un elemento dellamp;039array che non esiste Tentativo di scrivere su un file di sola lettura Gli errori logici e di runtime sono più difficili da individuare, sebbene le seguenti tecniche di sviluppo possano essere damp;039aiuto: Usa lo sviluppo basato su test: TTD ti incoraggia a scrivere test prima che una funzione venga sviluppata, ad esempio X viene restituito dalla funzioneY quando Z viene passato come parametro. Questi test vengono eseguiti durante lo sviluppo iniziale e gli aggiornamenti successivi per garantire che il codice continui a funzionare come previsto. Usa un sistema di rilevamento dei problemi: non camp;039è niente di peggio di unamp;039e-mail che afferma amp;quotIl tuo software non funzionaamp;quot ! I sistemi di rilevamento dei problemi consentono di registrare problemi specifici, documentare le fasi di riproduzione, determinare le priorità, assegnare sviluppatori e tenere traccia dellamp;039avanzamento delle correzioni. Usa il controllo del codice sorgente: un sistema di controllo del codice sorgente come Git ti aiuterà a eseguire il backup del codice, gestire le revisioni e identificare dove è stato introdotto un bug. I repository online, inclusi Github e Bitbucket, forniscono spazio libero e strumenti per progetti più piccoli o open source. Incontrerai ancora bug di Node.js, ma le sezioni seguenti descrivono i modi per individuare quellamp;039errore sfuggente.
Imposta le variabili di ambiente Node.js appropriate Le variabili di ambiente impostate nel sistema operativo host possono controllare lamp;039applicazione Node.js e le impostazioni del modulo. Il più comune è NODE_ENV , che di solito è impostato per lo sviluppo durante il debug o la produzione durante lamp;039esecuzione su un server live. Imposta le variabili di ambiente su macOS o Linux con il comando: NODE_ENV=development o al prompt dei comandi (classico) di Windows: set NODE_ENV=development o Windows PowerShell: $env:NODE_ENV=amp;quotdevelopmentamp;quot Nel popolare framework Express.js, lamp;039impostazione di NODE_ENV su sviluppo disabilita la memorizzazione nella cache dei file modello e genera messaggi di errore dettagliati, che potrebbero essere utili durante il debug. Altri moduli possono offrire funzionalità simili e puoi aggiungere una condizione NODE_ENV alle tue applicazioni, ad es
running in development mode? const devMode = (process.env.NODE_ENV !== amp;039productionamp;039) if (devMode) { console.log(amp;039application is running in development modeamp;039) } Puoi anche usare il metodo util.debuglog di Node per generare condizionalmente messaggi di errore, ad es import { debuglog } from amp;039utilamp;039 const myappDebug = debuglog(amp;039myappamp;039) myappDebug(amp;039log somethingamp;039) Questa applicazione produrrà il messaggio di registro solo quando NODE_DEBUG è impostato su myapp o un carattere jolly come * o my*. Usa le opzioni della riga di comando di Node.js Gli script del nodo vengono in genere avviati con il nodo seguito dal nome dello script di ingresso:
node app.js Puoi anche impostare le opzioni della riga di comando per controllare vari aspetti di runtime. I flag utili per il debug includono: check sintassi controlla lo script senza eseguirlo trace-warnings genera una traccia dello stack quando le promesse JavaScript non vengono risolte o rifiutate enable-source-maps mostra le mappe di origine quando si utilizza un transpiler come TypeScript throw-deprecation avverte quando vengono utilizzate funzionalità Node.js deprecate redirect-warnings=file emettere avvisi su un file anziché su stderr trace-exit genera una traccia dello stack quando viene chiamato process.exit() . Invia messaggi alla console Lamp;039output di un messaggio della console è uno dei modi più semplici per eseguire il debug di unamp;039applicazione Node.js:
console.log(`someVariable: ${ someVariable }`) Pochi sviluppatori si rendono conto che esistono molti altri metodi per console:

Saisissez lamp;rsquoaide pour afficher la liste des commandes. Vous pouvez faire défiler lamp;rsquoapplication de la façon suivante: cont ou C: continuer à exécuter la commande suivante ou n: exécuter la commande suivante ou S: entrer la fonction appelée ou: quitter la fonction et retourner lamp;rsquoinstruction appelant les pauses: mettre en pause la surveillance de code en cours damp;rsquoexécution (
Utilisez le navigateur Chrome pour déboguer le Code du noeud. Options du noeud JS. Lamp;rsquoinspection JS utilisée ci dessus démarre le serveur Web socket qui écoute sur le port hôte local 9229. Il démarre également un client de débogage basé sur le texte, mais pouvez utiliser des clients graphiques, tels que ceux intégrés dans Google Chrome et ceux basés sur des navigateurs Chrome tels que chrome, Edge, Opera, Vivaldi et brave. Vous voulez savoir comment nous avons augmenté le trafic de plus de 1000%? Joignez à plus de 20 000 personnes qui reçoivent nos communiqués de presse hebdomadaires pour donner des conseils aux experts WordPress! Pour déboguer une application Web typique, lancez la en utilisant lamp;rsquooption Inspect pour activer le serveur Web socket du débogueur V8: Node check index. Note js: Supposons un index. JS est un script damp;rsquoentrée damp;rsquoapplication. Assurez damp;rsquoutiliser Inspect et le double trait damp;rsquounion pour assurer que le client de débogueur basé sur le texte ne démarre pas. souhaitez redémarrer automatiquement lamp;rsquoapplication lors de lamp;rsquoédition damp;rsquoun fichier, pouvez utiliser le noeud au lieu du noeud. Par défaut, le débogueur namp;rsquoacceptera que les connexions entrantes de lamp;rsquoordinateur local. utilisez une application sur un autre appareil, une machine virtuelle ou un conteneur de docker, utilisez:

Noeud Vérifier = 0.0.0.0: 9229 index. JS

Options de vérification des noeuds. Vous pouvez également utiliser Inspect Brk au lieu de Inspect pour arrêter le traitement (définir un point damp;rsquoarrêt) sur la première ligne afin de faire défiler le code à partir de zéro. Ouvrez un navigateur Chrome et saisissez chrome:inspect Pour voir les périphériques locaux et réseau dans la barre damp;rsquoadresse:

Outil damp;rsquoinspection chromé. votre application de noeud. JS namp;rsquoapparaît pas comme une cible distante: cliquez pour ouvrir lamp;rsquooutil de développement spécifique au noeud et sélectionnez lamp;rsquoadresse et le port, ou sélectionnez découvrir la cible réseau, cliquez sur configuration, puis ajoutez
Lamp;rsquoadresse IP et le port de lamp;rsquoappareil sur lequel gi fonctionne. Cliquez sur le lien de vérification de la cible pour démarrer le client de débogueur devtools. Quiconque utilise devtools pour déboguer le code client devrait le connaître:

Vs Code break point. Les panneaux variables, moniteurs, piles damp;rsquoappels et points damp;rsquoarrêt sont similaires à ceux affichés dans les outils chrome devtools. Le panneau scripts chargés affiche les scripts chargés, bien que beaucoup soient à lamp;rsquointérieur du noeud. JS. La barre damp;rsquooutils des icônes damp;rsquoaction permet: de continuer: de continuer le traitement jusquamp;rsquoà la fin de lamp;rsquoétape suivante du point damp;rsquoarrêt: damp;rsquoexécuter la commande suivante, mais de rester à lamp;rsquointérieur de la fonction courante de ne pas sauter les fonctions entrées par namp;rsquoimporte quelle étape damp;rsquoappel: damp;rsquoexécuter la commande suivante et de passer à namp;rsquoimporte quelle fonction retournée par namp;rsquoimporte quelle étape damp;rsquoappel: de continuer Traitement jusquamp;rsquoà la fin de la fonction et retour à la commande damp;rsquoappel redémarrer lamp;rsquoapplication et le débogueur arrêter lamp;rsquoapplication et le débogueur comment chrome
G du Code avec nodemon. Comme précédemment, pouvez ajouter des points damp;rsquoarrêt, des points damp;rsquoarrêt conditionnels et des points de journal. La principale différence est que lorsque modifiez un fichier, nodemon redémarre automatiquement le serveur. Pour plus damp;, voir les paramètres de démarrage du Code vs. Les extensions de code vs suivantes peuvent également aider à déboguer le Code hébergé dans un environnement de serveur distant ou isolé: Remote Container: connection to applications running in Remote docker Container SSH: connection to applications Running on Remote Server WSL: connection to applications running in Windows for Linux Subsystem (WSL). amp;rsquooptions de débogage de noeuds. Guide de débogage des noeuds JS. JS conseille divers éditeurs de texte et damp;rsquoIDE, y compris Visual Studio, JetBrains webstorm, gitpod et Eclipse. Atom fournit une extension de débogage de noeud qui intègre le débogueur chrome devtools dans un éditeur. Une fois lamp;rsquoapplication active, devrez peut être envisager damp;rsquoutiliser des services de débogage commerciaux tels que logrocket et Sentry. Les erreurs client et serveur rencontrées par les utilisateurs réels peuvent être enregistrées et reproduites. Avez besoin damp;rsquoaide pour déboguer votre application? Historiquement, le débogage JavaScript a été difficile, mais des améliorations considérables ont été apportées au cours de la dernière décennie. Ce choix est bon, sinon meilleur, que dans les autres langues. Utilisez tous les outils utiles pour identifier le problème. Pas de problème avec la console. Log () est utilisé pour une recherche rapide de bogues, mais pour des problèmes plus complexes, chrome devtools ou vs Code peut être préférable. Les outils peuvent aider à créer un code plus robuste et passerez moins de temps à corriger les bogues. Sur quelles pratiques de débogage de noeuds. Tu le jures? Partagez le dans la section commentaires ci dessous!

Laisser un commentaire

Votre adresse de messagerie ne sera pas publiée. Les champs obligatoires sont indiqués avec *

ContactPress Supported By WordPress Plugins
Outils de développement Chrome. Passez au panneau source. Vous pouvez ouvrir namp;rsquoimporte quel fichier en appuyant sur CMD | Ctrl + P et en entrant un nom de fichier comme index.js. Cependant, il est plus facile damp;rsquoajouter des dossiers de projet à lamp;rsquoespace de travail. Cela permet de , modifier et enregistrer des fichiers directement à partir de devtools (si pensez que camp;rsquoest une bonne idée, camp;rsquoest différent!) Cliquez sur + pour ajouter un dossier à lamp;emplacement de lamp;rsquoélément de noeud de sélection de lamp;rsquoespace de travail. JS appuyez sur accept pour permettre des modifications de fichiers pouvez maintenant des fichiers à partir de lamp;rsquoarborescence de gauche:

Chrome devtools source panel. Cliquez sur namp;rsquoimporte quel numéro de ligne pour définir le point damp;rsquoarrêt indiqué par lamp;rsquoindicateur bleu. Le débogage est basé sur des points damp;rsquoarrêt. Ils précisent où le débogueur doit arrêter damp;rsquoexécuter le programme et affichent lamp;rsquoétat actuel du programme (variables, pile damp;rsquoappels, etc.) Vous pouvez définir namp;rsquoimporte quel nombre de points damp;rsquoarrêt dans lamp;rsquointerface utilisateur. Une autre option est de placer le débogueur Instructions dans le Code qui samp;rsquoarrêtent lorsque le débogueur est connecté. Téléchargez et utilisez lamp;rsquoapplication Web pour atteindre les instructions pour définir les points damp;rsquoarrêt. Dans cet exemple, http:localhost:3000 Ouvert dans namp;rsquoimporte quel navigateur, devtools samp;rsquoarrêtera à la ligne 44:

Chrome point damp;rsquoarrêt. Le panneau de droite affiche: lutter contre les temps d’arrêt et les problèmes WordPress? Kinsta est une solution damp;rsquohébergement conçue pour gagner du temps! Découvrez notre fonctionnalité à travers une ligne damp;rsquoicônes damp;rsquoaction (voir ci dessous). Le panneau de contrôle permet de surveiller var
Sélectionnez ajouter un point de log et saisissez une expression, comme le compteur de boucle I, I:

Points damp;rsquoenregistrement chromés. Dans lamp;rsquoexemple ci dessus, la console devtools envoie le compteur de boucle I: 0 au compteur de boucle I: 999. Déboguer lamp;rsquoapplication Node en utilisant le Code vs. JS vs Code, ou Visual Studio Code, est un éditeur de code Microsoft gratuit qui a été populaire auprès des développeurs web. Lamp;rsquoapplication est disponible pour Windows, mac os et Linux et est développée dans le cadre damp;rsquoElectron en utilisant la technologie Web. Le Code vs supporte les noeuds. JS a également un client de débogage intégré. La plupart des applications peuvent être déboguées sans aucune configuration Lamp;rsquoéditeur démarre automatiquement le serveur de débogage et le client. Ouvrez le fichier source (comme index.js), activez le panneau exécuter et déboguer, cliquez sur le bouton exécuter et déboguer, puis sélectionnez lamp;rsquoenvironnement du noeud. JS. Cliquez sur namp;rsquoimporte quelle ligne pour activer le point damp;rsquoarrêt affiché sous forme damp;rsquoicône circulaire rouge. Ensuite, ouvrez lamp;rsquoapplication dans le navigateur comme auparavant: le Code vs samp;rsquoarrête lorsque atteignez le point damp;rsquoarrêt: