Python FastAPI:如何创建一个通用异常处理程序来阻止应用程序在未处理的异常上崩溃?

Python FastAPI:如何创建一个通用异常处理程序来阻止应用程序在未处理的异常上崩溃?,python,exception,fastapi,Python,Exception,Fastapi,我想在使用uvicorn运行的FastAPI应用程序中捕获所有未处理的异常,记录它们,保存请求信息,然后让应用程序继续运行。除了最后一点之外,我似乎所有的工作都在进行中 @app.exception_handler(Exception) async def general_exception_handler(request: APIRequest, exception) -> JSONResponse: ... 它运行到完成,然后应用程序显示 2021-05-20 11:45:4

我想在使用uvicorn运行的FastAPI应用程序中捕获所有未处理的异常,记录它们,保存请求信息,然后让应用程序继续运行。除了最后一点之外,我似乎所有的工作都在进行中

@app.exception_handler(Exception)
async def general_exception_handler(request: APIRequest, exception) -> JSONResponse:
    ...
它运行到完成,然后应用程序显示

2021-05-20 11:45:45,261.261Z | ERROR | uvicorn.error | Exception in ASGI application
Traceback (most recent call last):
File "/Users/rhaven/code/projectblue-api/venv/lib/python3.8/site-packages/uvicorn/protocols/http/httptools_impl.py", line 385, in 
...
 File "/Users/rhaven/code/projectblue-api/venv/lib/python3.8/site-packages/fastapi/routing.py", line 149, in run_endpoint_function
return await dependant.call(**values)
File "./app/main.py", line 236, in internal_testing
raise Exception("test exception from blue-api")
一旦我处理了异常,我该如何处理它


干杯

我找到了另一个和我一样成功的人;没有提到如果他的服务器和我的一样死了我找到了ycd的答案我也从ycd那里找到了。由于处理程序除了不吃异常(异常通知程序而不是处理程序?)之外工作得很好,我希望我可以停止ISE而不走这条路线