Я пытаюсь диагностировать некоторые загадочные внутренние ошибки сервера, поэтому я добавил протоколирование в приложение фляги.Перебрав множество объяснений, я нашел этот ответ , который я использую ниже, вместе с предложением поместить все в @app.before_first_request
декоратор.
Локально это работает, как ожидалось, и werkzeuglog.log
содержит именно то, что выводится на экран.
Но на сервере:
- Файл журнала создан.
- В него ничего не записано.
- Ошибки не выдаются, по крайней мере, пользователю
@app.before_first_request
def initialize():
logger = logging.getLogger('werkzeug')
logger.setLevel(logging.DEBUG)
handler = logging.FileHandler('werkzeuglog.log')
logger.addHandler(handler)
if __name__ == '__main__':
#run app
app.run(
host="0.0.0.0",
port=int("80"),
debug=False
)
Я что-то не так делаю или это какая-то проблема с сервером, которая выходит за рамки моей компетенции?Ответы приветствуются!
РЕДАКТИРОВАТЬ : Некоторый контекст: Внутренняя ошибка сервера вызывается, когда пользователь загружает файл, и я пытаюсь выяснить, что идет не так, используя журнал.
Я не думаю, что это может быть проблемой с разрешениями, так как скрипт определенно создает файл.Я проверил, что диск не заполнен.
РЕДАКТИРОВАТЬ 2 Я перезапустить файл run.fcgi, который запускает сервер WSGI.Теперь отображаются ручные записи в файле журнала через logger.info('blah blah')
, но не отображаются другие, т.е. GET
POST
и т. Д.
У меня нет доступа к /var/log/nginx
.Это сервер, управляемый студентами-добровольцами, поэтому я хотел бы дать им как можно больше информации.Но это все, что у меня есть.