Comment puis-je get un total de toutes les statistics de tous les vassaux uWSGI en utilisant uwsgitop?

TL; DR

Quelqu'un peut-il me dire comment je pourrais get uwsgitop pour surveiller tous mes vassaux dans mon configuration empereur-vassal en un seul coup?


J'ai une configuration empereur-vassale pour mon server uWSGI, et j'ai besoin de surveiller tous mes vassaux. Je pourrais toujours vérifier mes journaux d'applications pour les différentes données, mais il est plus pratique d'avoir une mise à jour en time réel, une présentation complète de toutes les statistics.

Alors, j'ai essayé plusieurs choses:

  1. J'ai créé un file .ini commun qui contient les éléments suivants:

     [uwsgi] stats = stats_vassal.sock 

    Ensuite, dans le file .ini de chaque vassal, j'inclus ce file .ini commun. Le problème avec cette approche est que je n'obtiens aucune donnée significative lorsque je lance uwsgitop avec le file stats_vassal.sock . Mon hypothèse quant à la raison pour laquelle cela se produit, c'est que datatables de ce socket continuent à être écrasées par des statistics de certains vassaux qui ne sont pas utilisés.

    Alors, je suis passé à ….

  2. Dans le file .ini de chaque vassal, j'ai défini une option stats = stats_%n.sock . Maintenant, je peux exécuter uwsgitop sur chaque file de database stats_*.sock Pour surveiller ce vassal spécifique.

    Mais je veux pouvoir surveiller tous les vassaux d'une seule fois. uwsgitop semble accepter un seul argument.

J'ai examiné le sous – système Mesortingcs de uWSGI, et le "file" stats pusher semble être ce que je veux, car il continue à append un seul file. Cependant, lorsque j'ai essayé de mettre stats-push = file:path=stats_%n.sock,freq=1 dans chacun de mes files .ini vassal OU lorsque j'ai essayé de mettre stats-push = file:path=stats_vassal.sock,freq=1 dans mon file .ini vassal commun, j'ai l'erreur suivante lorsque je redémarre uWSGI:

impossible de find "file" stats_pusher

J'ai ensuite essayé d'inclure le plugin stats_pusher_file dans le même file .ini, mais j'ai l'erreur suivante:

!!! Inutile de charger le plugin uWSGI: ./stats_pusher_file_plugin.so: impossible d'ouvrir le file object partagé: aucun file ou directory tel quel!

Et c'est là que j'ai frappé une impasse.

One Solution collect form web for “Comment puis-je get un total de toutes les statistics de tous les vassaux uWSGI en utilisant uwsgitop?”

Malheureusement, uwsgitop n'a pas eu de telles possibilités, mais j'ai écrit "patch" et, avec mes modifications, il est possible d'utiliser uwsgitop de cette façon: uwsgitop /var/stats et il montre toutes les informations sur les travailleurs vassaux séparément sur un seul écran.

Vous pouvez vérifier le code ici

Échantillon

  • UWSGI SIGINT / SIGQUIT a reçu
  • Qu'est-ce que l'option --master REALEMENT fait dans uwsgi?
  • Pourquoi mes process uWSGI disparaissent-ils immédiatement?
  • le process uwsgi lancé par systemd s'arrête après un certain time
  • Nginx ne peut pas voir le socket unix
  • Pourquoi uWSGI ne charge-t-il pas l'application spécifiée dans la configuration nginx?
  • Comment configurer nginx et uwsgi lors de l'utilisation de virtualenv?
  • Comment configurer une list blanche de protocoles SSL / TLS dans uWSGI?
  • Aucun module nommé OS - NGINX / UWSGI / NGINX
  • uWSGI augmente les valeurs de security lors de la définition de plusieurs points de assembly en préformage + mode threadé
  • Script (bash) pour démarrer / redémarrer automatiquement nginx (s'il échoue)
  • Les astuces du serveur de linux et windows, tels que ubuntu, centos, apache, nginx, debian et des sujets de rĂ©seau.