スーパーバイザーを使用して Python スクリプトを実行しています。
[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
しかし、プロセスは開始できません。エラーログの内容は次のとおりです。
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>
mymoduleを取得しているようですが、twitter.pyを単独で実行すると、すべて正常に動作し、スーパーバイザーを介して実行したときにのみこのエラーがスローされます。
~/.profile ファイルの PYTHONPATH に mymodule を次のように追加しました。
export PYTHONPATH=$PYTHONPATH:/home/ubuntu/lib
ターミナルを介して実行するとスクリプトが機能するのに、スーパーバイザーを介して実行するとスクリプトが機能しない理由はありますか? どんな助けでも大歓迎です。