인프런 영문 브랜드 로고
인프런 영문 브랜드 로고

인프런 커뮤니티 질문&답변

뱅준님의 프로필 이미지
뱅준

작성한 질문수

실전! FastAPI 입문

로그 저장에 대한 질문입니다.

해결된 질문

작성

·

13

0

안녕하세요.

 

FastAPI로 개발을 하는 중, 로그 저장에 대해서 생각하는 시간을 좀 가져봤습니다.

저는 요청, 응답, 쿼리 이렇게 3가지로 나누어서 일자별로 각각의 파일에 저장을 하려고 하는데요.

 

혹시 FastAPI에서 자체적으로 지원하는 기능중에 이렇게 로그를 나누어 저장하는 기능이 있을까요?

 

감사합니다.

답변 1

0

신동현님의 프로필 이미지
신동현
지식공유자

FastAPI는 자체적으로 로그를 세분화해서 저장하는 기능을 제공하지는 않습니다. 그러나 Python의 표준 logging 모듈과 FastAPI의 Custom APIRoute 기능을 활용하면 요청-응답에 대해서는 로깅을 구현할 수 있습니다.

쿼리 로그는 sqlalchemy 이벤트를 이용해서 추가로 구현하시면 됩니다.

@event.listens_for(Engine, "before_cursor_execute")
def log_query(conn, cursor, statement, parameters, context, executemany):
    query_logger.info(f"Executing Query: {statement} - Params: {parameters} - {datetime.now()}")
뱅준님의 프로필 이미지
뱅준

작성한 질문수

질문하기