GoReplay - Pour débugger et tester vos applications web même en prod
Ça vous dirait un outil open-source pour “capturer” toute l’activité engendrée par les utilisateurs de votre application web pour la réutiliser ensuite afin de faire des tests plus en profondeur ?
C’est ce que permet grosso modo GoReplay (Gor) qui vous offre la possibilité de sélectionner une partie du trafic de production et de le rejouer dans l’environnement de test, tout en ayant la possibilité de filtrer et réécrire les requêtes en temps réel.
Un exemple concret est l’utilisation de GoReplay serait de faire du shadowing, des tests de charge, ou encore une analyse et une surveillance détaillées.
Vous l’aurez compris, c’est donc un outil de test de charge précis qui permet d’analyser et d’enregistrer le trafic réseau sans affecter vos applications.
GoReplay peut également être étendu avec des plugins, qui peuvent être écrits dans n’importe quel langage. Ils vous permettront alors d’accéder et de modifier dynamiquement les données de requêtes et de réponses. Grâce à GoReplay, vous pourrez également mettre en œuvre une logique de réécriture et de surveillance complexe de vos applications.
Vous pouvez non seulement stocker la dernière capture du trafic de production pour créer des cas de test reproductibles, mais aussi enregistrer des données à des fins d’audit, tout en supprimant dynamiquement les données sensibles. Vous pourrez ainsi exposer les métriques d’application en direct, surveiller les performances et la santé de votre application.
Pour installer et utiliser GoReplay, vous pouvez télécharger la dernière version binaire sur le site officiel ou compiler vous-même. Une fois le logiciel installé, il vous suffit de lancer GoReplay en exécutant des commandes comme :
sudo ./gor --input-raw :8000 --output-stdout
.
Et voilà ! Maintenant vous disposez d’un outil puissant pour capturer et rejouer le trafic réseau en temps réel, optimiser la performance et la résilience de vos applications, et faciliter la supervision et le débogage de vos services.
Si vous voulez en savoir plus sur GoReplay, consultez la documentation la plus récente sur leur page GitHub.