Есть ли способ регистрировать операторы печати python в gunicorn?

С моим Procfile, как это:

web: gunicorn app:app 
    --bind "$HOST:$PORT" 
    --debug --error-logfile "-" 
    --enable-stdio-inheritance 
    --reload 
    --log-level "debug" 

можно ли каким-либо образом получить python print операторы для входа в stdout / bash? Я использую bottle framework здесь также, если это влияет на что-либо.

2 ответов


получается print заявления действительно проходили, но с задержкой.

на документы gunicorn для --enable-stdio-inheritance Примечание Для установки PYTHONUNBUFFERED, который я думал, что у меня есть, но, похоже, с неправильным синтаксисом.

я решил это с помощью мой foreman настройка для установки переменной следующим образом:

PYTHONUNBUFFERED=TRUE

пожалуйста, попробуйте ниже команду:

gunicorn --workers 3 --bind 127.0.0.1:5000 --error-logfile /var/log/gunicorn/error.log --access-logfile /var/log/gunicorn/access.log --capture-output --log-level info

это сработало для меня.

указать log-level to debug(по умолчанию info)http://docs.gunicorn.org/en/stable/settings.html#loglevel,

кроме того, указать capture-output флаг (по умолчанию false)http://docs.gunicorn.org/en/stable/settings.html#capture-output.

вы должны иметь возможность смотреть журналы в файле журнала ошибок.