1

スーパーバイザーと Gunicorn を使用して NewRelic Python エージェントをセットアップで動作させようとしていますが、動作させることができません。

これが機能する現在のスーパーバイザーのセットアップです。

[program:gunicorn]
directory = /home/<USER>/.virtualenvs/<DOMAIN>/myproject/
command=/home/<USER>/.virtualenvs/<DOMAIN>/bin/gunicorn my_project.wsgi:application

私はこれをやろうとしました:

[program:gunicorn]
directory = /home/<USER>/.virtualenvs/<DOMAIN>/myproject/

#Working command
#command=/home/<USER>/.virtualenvs/<DOMAIN>/bin/gunicorn myproject.wsgi:application


command=/home/<USER>/.virtualenvs/<DOMAIN>/bin/newrelic-admin run-program /home/<USER>/.virtualenvs/<DOMAIN>/bin/gunicorn myproject.wsgi:application
environment=NEW_RELIC_CONFIG_FILE=/home/<USER>/.virtualenvs/<DOMAIN>/myproject/newrelic.ini

user = <USER>
autostart = true
autorestart = true
stderr_events_enabled = true
redirect_stderr = true
stdout_logfile = /home/<USER>/logs/gunicorn.log
stderr_logfile = /home/<USER>/logs/gunicorn_err.log

しかし、私はこのエラーが発生します:

Traceback (most recent call last):
  File "/home/user/.virtualenvs/domain.com/lib/python2.7/site.py", line 688, in <module>
    main()
  File "/home/user/.virtualenvs/domain.com/lib/python2.7/site.py", line 679, in main
    execsitecustomize()
  File "/home/user/.virtualenvs/domain.com/lib/python2.7/site.py", line 547, in execsitecustomize
    import sitecustomize
  File "/home/user/.virtualenvs/domain.com/local/lib/python2.7/site-packages/newrelic-1.10.2.38-py2.7-linux-x86_64.egg/newrelic/bootstrap/sitecustomize.py", line 74, in <module>
    newrelic.agent.initialize(config_file, environment)
  File "/home/user/.virtualenvs/domain.com/local/lib/python2.7/site-packages/newrelic-1.10.2.38-py2.7-linux-x86_64.egg/newrelic/config.py", line 1456, in initialize
    log_file, log_level)
  File "/home/user/.virtualenvs/domain.com/local/lib/python2.7/site-packages/newrelic-1.10.2.38-py2.7-linux-x86_64.egg/newrelic/config.py", line 383, in _load_configuration
    'Unable to open configuration file %s.' % config_file)
newrelic.api.exceptions.ConfigurationError: Unable to open configuration file /.

newrelic.ini ファイルはそのパスにありますが、何が間違っているのでしょうか?

編集:

newrelic.ini ファイルへのパスは次のとおりです。

/home/<USER>/.virtualenvs/<DOMAIN>/myproject/newrelic.ini
4

3 に答える 3

5

環境が機能するには引用符が必要です。

これが作業セットアップです:

[program:gunicorn]
directory = /home/<USER>/.virtualenvs/<DOMAIN>/<PROJECT>/
command=/home/<USER>/.virtualenvs/<DOMAIN>/bin/newrelic-admin run-program /home/<USER>/.virtualenvs/<DOMAIN>/bin/gunicorn <PROJECT>.wsgi:application
environment=NEW_RELIC_CONFIG_FILE="/home/<USER>/.virtualenvs/<DOMAIN>/<PROJECT>/newrelic.ini"

user = <USER>
autostart = true
autorestart = true
stderr_events_enabled = true
redirect_stderr = true
stdout_logfile = /home/<USER>/logs/gunicorn.log
stderr_logfile = /home/<USER>/logs/gunicorn_err.log
于 2013-04-19T09:13:20.533 に答える
1

gunicorn を使用する場合に推奨される方法である newrelic-admin を使用していません。使用する:

[program:gunicorn]
directory = /home/user/.virtualenvs/domain.com/my_project/
command=/home/user/.virtualenvs/domain.com/bin/newrelic-admin run-program /home/user/.virtualenvs/domain.com/bin/gunicorn my_project.wsgi:application
environment=NEW_RELIC_CONFIG_FILE=/home/user/.virtualenvs/domain.com/bin/newrelic.ini

wsgi.py ファイルを変更する必要はありません。

bin ディレクトリに newrelic.ini ファイルがある理由はわかりません。通常はプロジェクトに貼り付けますが、プロジェクトも virtualenv の下にあり、これも少し奇妙です。

Supervisord から環境変数を渡す方法については、以下を参照してください。

newrelic-admin コマンドの詳細と、gunicorn での使用方法については、以下を参照してください。

于 2013-04-18T01:40:59.117 に答える
0

まあ、私は同じ種類の問題に直面していました。私は次のようになりました:

warpdrive: ERROR (no such file)

残念なことに、supervisord.conf ファイルを変更した後、supervisorctl を更新していませんでした。したがって、supervisord.conf ファイルを変更するたびに、次の cmd を再実行します。

sudo supervisorctl update

次に実行します:

sudo supervisorctl restart all

乾杯!

于 2016-05-24T08:57:32.010 に答える