Y a-t-il un moyen d'exporter des messages connectés à la console JavaScript dans Google Chrome? P>
Sinon, quelqu'un peut-il suggérer un bon moyen de diagnostiquer les problèmes JavaScript sur la machine d'un client? Je n'ai pas été en mesure de reproduire les problèmes localement, malgré la mise en place d'un environnement identique. P>
4 Réponses :
Étape 1: Ajouter une tasse de console.log des instructions qui vous aideront à diagnostiquer votre problème
Étape 2: Ajouter une logique à ré-définir la console.log sur le système de votre client afin qu'il enregistre réellement ses arguments à Windows.Log (ou quoi que ce soit) au lieu de les enregistrer réellement à la console. p> Étape 3: ajoutez un gestionnaire Onunload qui déclenche une demande Ajax à votre serveur avec le contenu de la fenêtre. Connectez-vous comme l'un de ses paramètres P> Étape 4: Profit! ; -) p> Un bonus ajouté à ce système est que (une fois que vous avez configuré), vous pouvez utiliser CONSOLE.LOG Indiscriminement, et que vous soyez dans votre environnement de développement ou votre environnement direct, il fera la bonne chose. p> p>
P.s. Tous les navigateurs ne prennent pas en charge Onunload; Si votre client ne le fait pas, vous voudrez probablement déclencher les appels AJAX sur chaque console.log (ou bien utiliser la fenêtre.setInterval sur "Sondage" window.log fréquemment).
Intéressant et difficile .. mais semble compliqué! (En particulier, étape 3) n'est-il pas un moyen plus facile de le faire ..?
C'est vraiment assez simple, mais juste pour essayer de montrer que j'ai ajouté une deuxième réponse.
Je suggérerais également de ne pas appeler console.log du tout et crée plutôt une enveloppe, quelque chose comme fonction vomitdebug (msg) {...} code> - plus facile à prolonger et le problème où le client a réellement une console. LOG DISPAPPARES.
Doux. Juste la chose que je cherchais.
console.log (1, 2, 3); code> ne met que 1 code> dans window.log code>.
Vous devriez faire console.log (1); console.log (2); console.log (3); code>. Ou vous devez modifier la fonction journal code> pour gérer plusieurs arguments.
Vous pouvez utiliser ma bibliothèque de journalisation JavaScript, log4javascript . Vous devrez: P>
Voici une version légèrement plus courte / plus simple de ma réponse précédente. Pour garder les choses faciles, nous ferons simplement un appel Ajax sur chaque journal et garder les choses encore plus faciles que nous utiliserons JQuery pour faire le "levage lourd". (Si vous utilisez une bibliothèque JS autre que jQuery, il devrait avoir une sorte de méthode similaire; sinon, ou si vous n'utilisez pas une bibliothèque JS ... heure de sérieusement em> considérer jQuery!) Oh, et nous jetons un pseudo-code côté serveur pour démontrer à quel point une partie de l'équation est facile. Étape 1: Ajouter un tas de console.Log Des énoncés qui aideront à diagnostiquer votre problème p > Étape 2: Ajouter une logique à ré-définir la console.log sur le système de votre client afin qu'il envoie le journal à votre serveur s'il n'y a pas de console p> étape 3: Créez une page de journalisation sur votre serveur P> L'exemple suivant utilise un pseudo-code, car tout le monde a une langue de côté serveur différente: p>
Il y a un outil open-source qui vous permet de sauvegarder tout js logflush em> est une solution de journalisation JavaScript intégrée comprenant: p>
Demo P> console.log code> sortie dans un fichier sur votre serveur - js logflush (fiche!). p>