@I-V:
Díky. Tak jsem to měl původně udělané.
Ale rozhodně jdu na rq. Použiju tedy subprocess. Změním ten proces na synchronní, nějak takhle (zatím neodzkoušeno):
```
process = Popen(cmd, stdin=PIPE, stdout=PIPE, stderr=PIPE, shell=False)
stdout, stderr = process.communicate()
if stderr:
raise ....
```
Má to pro mě 2 zásadní výhody.
1) Job zařazením do fronty dostane id. Pak můžu pomocí toho id a fronta.finished_job_registry.get_job_ids() a podobně fronta.failed_job_registry.get_job_ids() jednoduše zjistit, jestli příkaz skončil a jestli dobře nebo havaroval.
To potřebuju zjišťovat z ajaxu (jde o vytváření nebo zpětné nahrávání záloh z nějakého administračního panelu).
2) Integrace django_rq do admina se mi zdá perfektní, takže tam vidím všechno, co kdy spadlo. Chybu dostanu taky do Sentry. Ještě to nemám, ale snad se mi podaří přenést nějakým jednotným způsobem i stderr z bash skriptu do rq panelu i do Sentry.
A prostě celé mi to přijde takové robustnější a systematičtější řešení.
Dne neděle 20. prosince 2020 v 22:36:16 UTC+1 uživatel Ing. Vladimir napsal: