Kde je Procfile? - heroku

Snažím sa nainštalovať New Relic, ale hovorí, že budem musieť urobiť zmeny Procfile, Zdá sa mi, že to nie je v koreňovom kóde lokálnej kópie mojej aplikácie, ale používam Django.

Vďaka

odpovede:

0 pre odpoveď č. 1

Táto stránka na Heroku dáva oveľa viac informácií o tom, čo je procfile: https://devcenter.heroku.com/articles/procfile

Nemusíte mať k Heroku nasadenie, ale môžete ho vytvoriť manuálne, aby ste získali väčšiu kontrolu nad tým, ako Heroku spúšťa vaše aplikácie .. Podľa tohto výňatku z vyššie uvedeného odkazu:

Procfile nie je potrebné na nasadenie aplikáciípísaný vo väčšine jazykov podporovaných Heroku. Platforma automaticky rozpozná jazyk a vytvorí predvolený typ webového procesu na zavedenie aplikačného servera.

Vytvorenie explicitného súboru Procfile sa odporúča pre väčšiu kontrolu a flexibilitu vo vašej aplikácii.

Aby mohol Heroku používať Procfile, pridajte Procfile do koreňového adresára aplikácie push do Heroku:

$ git add .
$ git commit -m "Procfile"
$ git push heroku
...
-----> Procfile declares process types: web, worker
Compiled slug size is 10.4MB
-----> Launching... done
http://strong-stone-297.herokuapp.com deployed to Heroku

To git@heroku.com:strong-stone-297.git
* [new branch]      master -> master

0 pre odpoveď č. 2

Pre novú relikovú podporu musíte výslovne povedať Heroku, aby v New Relic spustil inštanciu gunicorn. Takže tvoje Procfile by vyzerať nejako takto:

newrelic-admin run-program gunicorn --workers 4 --worker-class gevent --timeout 60 mysite.wsgi

Môžete to zapnúť alebo vypnúť bez zmeny Procfile podmienečne hľadáte svoju licenciu New Relic v prostredí Heroku premenné:

Procfile:
web: bash scripts/heroku_run
scripts/heroku_run:
#!/bin/bash

run_command="gunicorn --workers 4 --worker-class gevent --timeout 60 mysite.wsgi"

# Run through New Relic monitoring if add-on installed
if [[ $NEW_RELIC_LICENSE_KEY != "" ]]; then
newrelic-admin run-program $run_command
else
$run_command
fi