Как использовать ведение журнала в обработчике маршрута Python Quart?

Я новичок в hypercorn+uvloop+quart. Я пытаюсь создать следующие файлы и распечатать информацию / журнал отладки в обработчике маршрута, но ничего не отображается. Я отлаживал обработчик маршрута и заметил dog_server.logger.disabled = True. Кто-нибудь знает в чем проблема? Благодаря!

dog_blueprint.py

from quart import Blueprint
import logging

logging.basicConfig(level=logging.DEBUG)

class DogBlueprint(Blueprint):
    logger = None
    app_config = None

    def register(self, app, options, first_registration: bool = False):
        # app.logger.info('DogBlueprint is registering')
        print('Blueprint registering...')
        self.logger = app.logger 
        self.logger.info("Hello")  # This one working fine
        self.app_config = app.config
        super(DogBlueprint, self).register(app, options, first_registration)
        self.logger.info("World")  # This one working fine

route.py

dog_server = DogBlueprint('dog_server', __name__)
logging.basicConfig(level=logging.DEBUG)

@dog_server.route('/score', methods=['POST'])
async def post_handler():
    received = await _fetch_post_body(request)
    dog_server.logger.info(f'Received size: {len(received)}')  # This one does not work
    ... ... 

1 ответ

Решение

Это ошибка Hypercorn, см. Это обсуждение. Я бы избегал 0.11.0 и использовал 0.10.2 или 0.11.1. (Я автор Hypercorn).

Другие вопросы по тегам