Fastapi (uvicorn) логгирование в файл

Всем привет.

Кто подскажет, как заставить fastapi (uvicorn) писать логи в файл?

Если посмотреть LOGGING_CONFIG

{'disable_existing_loggers': False,
 'formatters': {'access': {'()': 'uvicorn.logging.AccessFormatter',
                           'fmt': '%(levelprefix)s %(client_addr)s - '
                                  '"%(request_line)s" %(status_code)s'},
                'default': {'()': 'uvicorn.logging.DefaultFormatter',
                            'fmt': '%(levelprefix)s %(message)s',
                            'use_colors': None}},
 'handlers': {'access': {'class': 'logging.StreamHandler',
                         'formatter': 'access',
                         'stream': 'ext://sys.stdout'},
              'default': {'class': 'logging.StreamHandler',
                          'formatter': 'default',
                          'stream': 'ext://sys.stderr'}},
 'loggers': {'uvicorn': {'handlers': ['default'],
                         'level': 'INFO',
                         'propagate': False},
             'uvicorn.access': {'handlers': ['access'],
                                'level': 'INFO',
                                'propagate': False},
             'uvicorn.error': {'level': 'INFO'}},
 'version': 1}

Там есть stream, который указывает на sterr или stout.

  • Не могу сообразить, как перенаправить вывод в файл?
  • Может, есть какой-то способ лучше?

Ответы (0 шт):