Comment déboguer du code lua à l'intérieur de nginx config?
Je veux insérer des points de log (io.d'écriture) à l'intérieur de mon code lua qui lui-même est dans nginx configuration (à l'aide de HttpLuaModule pour nginx).
Comment faire?
L'accès et les journaux d'erreurs ne sont pas les montrer.
Est-il un moyen de modifier le message de log format? Actuellement, je suis un verr longs messages, avec la date, l'accueil, etc. . "2017/03/03 05:31:22 [] 44#0: *17 [lua] content_by_lua(proj1.conf:110):3: votre message ici, client: 172.18.0.1, serveur:"
Une autre option pour Lua de débogage dans nginx (en plus de "l'impression") est d'utiliser un Lua IDE qui prend en charge le débogage à distance. J'ai posté instructions sur la façon dont cela peut être fait avec ZeroBrane Studio IDE. Après l'avoir configuré, vous obtenez la plupart des fonctions de débogage que vous attendez, comme pas à pas, points d'arrêt, les inspections de variables, les traces de pile, et une console pour exécuter Lua commandes à distance.
merci paul, je vais essayer cette méthode . Je préfère cette façon de travailler plutôt que de l'impression des valeurs de tous les temps.
Lors de l'exécution sous nginx, vous devez utiliser la ngx.journal. E. g:
ngx.log(ngx.STDERR, 'your message here')
Pour un exemple, voir http://linuxfiddle.net/f/77630edc-b851-487c-b2c8-aa6c9b858ebb
Pour la documentation, voir http://wiki.nginx.org/HttpLuaModule#ngx.log
OriginalL'auteur mikaraento
Une autre option pour Lua de débogage dans nginx (en plus de "l'impression") est d'utiliser un Lua IDE qui prend en charge le débogage à distance. J'ai posté instructions sur la façon dont cela peut être fait avec ZeroBrane Studio IDE. Après l'avoir configuré, vous obtenez la plupart des fonctions de débogage que vous attendez, comme pas à pas, points d'arrêt, les inspections de variables, les traces de pile, et une console pour exécuter Lua commandes à distance.
OriginalL'auteur Paul Kulchenko