Skip to content

44. Debugging


1. Debugging

  • VSCode와 같은 에디터를 사용하여 디버거를 연결할 수 있다.


2. Call uvicorn

  • FastAPI 애플리케이션에서, uvicorn을 임포트한 후 직접 실행한다.


import uvicorn
from fastapi import FastAPI

app = FastAPI()

@app.get("/")
def root():
    a = "a"
    b = "b" + a

    return {"hello world": b}

if __name__ == "__main__":
    uvicorn.run(app, host="0.0.0.0", port=8000)


1) About __name__ == "__main__"

  • __name__ == "__main__"의 주요 목적은 다음과 같이 파일이 호출될 때 실행되는 일부 코드를 갖는 것이다.


python myapp.py


  • 하지만 다음과 같이 다른 파일이 해당 파일을 가져올 때는 호출되지 않는다.


from myapp import app


(1) More details

  • myapp.py라는 이름을 가진 파일이 있다고 가정해 보자.
  • 이 파일을 다음과 같이 실행한다.


python myapp.py


  • 그러면 Python에 의해 생성된 파일의 내부 변수 __name__이 값으로 "__main__" 문자열을 자동으로 갖게 된다.


3. Run your code with your debugger

  • 코드에서 직접 Uvicorn 서버를 실행하기 때문에 디버거에서 직접 FastAPI 애플리케이션을 호출할 수 있다.

References