Używam przełożonego, aby uruchomić skrypt Pythona:Supervisor - uruchomienie skryptu python PYTHONPATH problem
[program:twitter_track]
autorestart = true
numprocs = 1
autostart = false
redirect_stderr = True
stopwaitsecs = 1
startsecs = 1
priority = 99
command = python /home/ubuntu/services/twitter.py track
startretries = 3
stdout_logfile = /home/ubuntu/logs/twitter_track.log
Ale proces nie rozpocznie. Oto co mówi dziennik błędów:
Traceback (most recent call last):
File "/home/ubuntu/services/twitter.py", line 6, in <module>
from mymodule.twitter.stream import TwitterStream
ImportError: No module named mymodule.twitter.stream
Traceback (most recent call last):
File "/home/ubuntu/services/twitter.py", line 6, in <module>
Wydaje się, że uzyskanie mymodule, ale jeśli uruchomię twitter.py na swój własny, wszystko działa dobrze, to tylko rzuca ten błąd, gdy uruchomię go przez przełożonego.
dodałem mymodule do PYTHONPATH w moim pliku ~/.profile tak:
export PYTHONPATH=$PYTHONPATH:/home/ubuntu/lib
Czy istnieje jakikolwiek powód, dlaczego skrypt będzie działać, gdy prowadzony przez terminala, ale nie wtedy, gdy prowadzony przez przełożonego? Każda pomoc będzie doceniona.