J'ai mis Celery dans mon application Django afin que les deux autres programmes python puissent traiter l'entrée de mon application Django en faisant une méthode de sous-processus. Ma question est comment puis-je accéder à la sortie du sous-processus? À l'époque, quand je faisais juste un programme python, j'accédais aux fichiers journaux (sortie des deux applications) via stdout et stderr. Est-ce la même chose quand j'utilise Céleri dans Django? Est-ce que la valeur de CELERY_RESULT_BACKEND
(si je devrais attribuer la base de données de mon application Django ici) est affectée par les fichiers journaux?Accéder au sous-processus stdout et stderr de Celery dans mon application Django
Jusqu'à présent, ce que je l'ai fait est:
Accédez aux deux applications via subprocess dans mon tasks.py
J'affecté mon courtier de db, Redis, comme mon db maintenant CELERY_RESULT_BACKEND. Mon plan est d'obtenir les fichiers journaux, puis les enregistrer dans la base de données de mon application Django afin que je puisse simplement accéder à cette base de données.
Pouvez-vous offrir de l'aide?
Eh bien, les valeurs de retour sont là. Si vous cherchez des instructions de débogage et quand la tâche a été reçue et similaire, vous ne pouvez pas obtenir cette information. Mais vous pouvez accéder aux métadonnées Résultat/Tâche et à la valeur de retour Tâche. – 2ps
Ah, d'accord, je comprends maintenant. Si cela ne fonctionne pas, peut-être que je peux contrôler la valeur de stdout et stderr. : D Merci! – sparklights
** J'ai supprimé mon premier commentaire, désolé, n'a pas vu votre réponse avant. Merci pour votre réponse! – sparklights