Por lo tanto, estoy usando este MDW disponible de código abierto: https://github.com/snok/asgi-correlation-id , que esencialmente solo genera y agrega un ID de correlación único para las solicitudes entrantes en la aplicación FastAPI.
Sin embargo, he creado otro middleware personalizado para mi aplicación, de esta manera:
@app.middleware("http") async def some_custom_mdw_function(request: Request, call_next): # some operation I do here # which also requires me fetching the # correlation_id created via the asgi-correlation-id # I have code line over here like: asgi_corr_id = correlation_id.get() # a function imported from asgi-correlation-id librarySin embargo, esto me da un error a veces, ya que aparentemente, en esas ocasiones, este MDW some_custom_mdw_function se llama antes que el MDW asgi-correlation-id y, por lo tanto, no se encuentra el ID de correlación.
¿Cómo me aseguro de que asgi-correlation-id MDW se llame siempre antes de some_custom_mdw_function MDW? ¿Hay alguna forma de establecer el orden de ejecución de MDW en FastAPI?