Запись в колбу в файл - работает локально, но не на сервере - PullRequest
0 голосов
/ 06 июня 2018

Я пытаюсь диагностировать некоторые загадочные внутренние ошибки сервера, поэтому я добавил протоколирование в приложение фляги.Перебрав множество объяснений, я нашел этот ответ , который я использую ниже, вместе с предложением поместить все в @app.before_first_request декоратор.

Локально это работает, как ожидалось, и werkzeuglog.log содержит именно то, что выводится на экран.

Но на сервере:

  1. Файл журнала создан.
  2. В него ничего не записано.
  3. Ошибки не выдаются, по крайней мере, пользователю
@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.Это сервер, управляемый студентами-добровольцами, поэтому я хотел бы дать им как можно больше информации.Но это все, что у меня есть.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...