Jestem nowy do hypercorn + uvloop + quart. Próbuję utworzyć następujące pliki i drukować niektóre informacje / debugowanie dziennika w obsłudze trasy, ale nic się nie pojawia. Dybugowałem do obsługi trasy i zauważyłem dog_server.logger.disabled = True. Czy ktoś wie, co jest problemem? Dzięki!

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
    ... ... 
0
NonStatic 5 październik 2020, 06:45

1 odpowiedź

Najlepsza odpowiedź

Jest to błąd w Hypercorn, zobacz to Dyskusja. Unikam 0,11.0 i użyłem 0,10.2 lub 0,11.1. (Jestem autorem hiperkornowym).

1
pgjones 7 październik 2020, 10:20