sql >> データベース >  >> NoSQL >> Redis

Django CeleryElasticBeanstalkはそのようなプロセスエラーを監視していません

    はい、パスは問題ありません:

    command=/opt/python/run/venv/bin/celery worker -A wellfie --loglevel=INFO
    

    eb環境プロパティで上書きするように、PYTHONPATH変数が2回設定されていることに気付きましたか?アプリケーションに設定されたら、次にアプリケーションwellfieパッケージに設定されます。

    ログエントリ:

    environment=
    PYTHONPATH="/opt/python/current/app/:",
    PATH="/opt/python/run/venv/bin/:%ENV_PATH)s",
    RDS_PORT="5432",
    PYTHONPATH="/opt/python/current/app/wellfie:",
    REDIS_URL="bbbbb.bbbbb.0001.usw2.cache.amazonaws.com:6379",
    RDS_DB_NAME="bbbdb",
    DJANGO_SETTINGS_MODULE="wellfie.settings",
    RDS_USERNAME="aaaa",
    RDS_PASSWORD="bbbb",
    RDS_HOSTNAME="bbbbb.bbbbb.us-west-2.rds.amazonaws.com"
    

    私:

    environment=
    PYTHONPATH="/opt/python/current/app/:",
    PATH="/opt/python/run/venv/bin/:%(ENV_PATH)s",
    WEBSERVER="APACHE",
    CNAME="xxxxx-prod-env",
    PYCURL_SSL_LIBRARY="nss",
    APP_ENV="prod"
    

    そこで、調査から始めます。もう1つ覚えておくべきことは、RedisなどのAWSサービスを使用する場合は、そのサービスのセキュリティグループ設定を使用してオープン接続を行う必要があります。そうしないと、接続できなくなります。

    留意点:

    1. インスタンスでプレイする場合は、virtualenvについて覚えておいてください。したがって、次のようなコマンドを実行します:

      cd / opt / python / current / app &&source / opt / python / run / venv / bin / activate &&python manage.py

    2. 「ImportError:「wellfie」という名前のモジュールは一度も発生せず、システムが起動していてプロセスの準備ができていない可能性があるため、celery-beat.log、celery-worker.logにログインする可能性があります。

    3. ImportError('xxxx.toi3pr.0001.usw2.cache.amazonaws.comという名前のモジュールはありません'、)はPythonの初期化の問題のようです。

    ファイルroot_folder/ django_app / __init__。pyを変更します :

    from __future__ import absolute_import, unicode_literals
    
    # This will make sure the app is always imported when
    # Django starts so that shared_task will use this app.
    from django_app.celery import app as celery_app
    
    __all__ = ['celery_app']
    

    修正は変更することでした:

    supervisorctl -c /opt/python/etc/supervisord.conf restart celeryd 
    

    supervisorctl -c /opt/python/etc/supervisord.conf restart celeryd-worker
    supervisorctl -c /opt/python/etc/supervisord.conf restart celeryd-beat
    



    1. mongodbの大量のレコードのページネーションが遅い

    2. MongoDB-クエリとは異なり、インデックスを使用しません

    3. MongoDBサーバーのディスクスペースの理解と管理

    4. MapReduceのHadoopカウンターとカウンターの種類