AkJeond commited on
Commit
6dca109
·
1 Parent(s): beaebf4

fix: 로깅 메시지에서 포맷을 f-string 스타일로 변경

Browse files
app/routers/downloads.py CHANGED
@@ -92,7 +92,12 @@ def download_document(
92
  except ValueError as value_error:
93
  raise HTTPException(status_code=status.HTTP_404_NOT_FOUND, detail=str(value_error)) from value_error
94
  except Exception as error: # pylint: disable=broad-except
95
- logger.error("Word 문서 생성 실패: project_id=%s / error=%s", project_id, error, exc_info=True)
 
 
 
 
 
96
  raise HTTPException(
97
  status_code=status.HTTP_500_INTERNAL_SERVER_ERROR,
98
  detail="Word 문서 생성 중 오류가 발생했습니다.",
 
92
  except ValueError as value_error:
93
  raise HTTPException(status_code=status.HTTP_404_NOT_FOUND, detail=str(value_error)) from value_error
94
  except Exception as error: # pylint: disable=broad-except
95
+ logger.error(
96
+ "Word 문서 생성 실패: project_id={} / error={}",
97
+ project_id,
98
+ error,
99
+ exc_info=True,
100
+ )
101
  raise HTTPException(
102
  status_code=status.HTTP_500_INTERNAL_SERVER_ERROR,
103
  detail="Word 문서 생성 중 오류가 발생했습니다.",
app/routers/pages.py CHANGED
@@ -52,7 +52,7 @@ def _create_project_for_upload(db: Session) -> Project:
52
  ),
53
  user_id=DEFAULT_USER_ID,
54
  )
55
- logger.info("업로드용 프로젝트 생성 - ProjectID: %s", project.project_id)
56
  return project
57
 
58
 
@@ -285,7 +285,12 @@ def save_page_text(
285
  detail=str(value_error),
286
  ) from value_error
287
  except Exception as error: # pylint: disable=broad-except
288
- logger.error("페이지 텍스트 저장 실패: page_id=%s / error=%s", page_id, error, exc_info=True)
 
 
 
 
 
289
  raise HTTPException(
290
  status_code=status.HTTP_500_INTERNAL_SERVER_ERROR,
291
  detail="페이지 텍스트 저장 중 오류가 발생했습니다.",
 
52
  ),
53
  user_id=DEFAULT_USER_ID,
54
  )
55
+ logger.info("업로드용 프로젝트 생성 - ProjectID: {}", project.project_id)
56
  return project
57
 
58
 
 
285
  detail=str(value_error),
286
  ) from value_error
287
  except Exception as error: # pylint: disable=broad-except
288
+ logger.error(
289
+ "페이지 텍스트 저장 실패: page_id={} / error={}",
290
+ page_id,
291
+ error,
292
+ exc_info=True,
293
+ )
294
  raise HTTPException(
295
  status_code=status.HTTP_500_INTERNAL_SERVER_ERROR,
296
  detail="페이지 텍스트 저장 중 오류가 발생했습니다.",
app/services/batch_analysis.py CHANGED
@@ -285,7 +285,7 @@ def _sync_layout_runtime_fields(
285
  target = element_map.get(mock.element_id)
286
  if not target:
287
  logger.warning(
288
- "정렬 결과에 존재하지만 DB에 없는 element_id=%s", mock.element_id
289
  )
290
  continue
291
 
@@ -341,7 +341,9 @@ async def _process_single_page_async(
341
  개별 페이지에 대한 전체 파이프라인을 실행하고 결과 요약을 반환합니다.
342
  """
343
  logger.info(
344
- "페이지 분석 시작: project_id=%s / page_id=%s", project.project_id, page.page_id
 
 
345
  )
346
  page_start = time.time()
347
 
@@ -401,7 +403,7 @@ async def _process_single_page_async(
401
  )
402
  except Exception as ai_error:
403
  logger.error(
404
- "AI 설명 생성 비동기 처리 실패: page_id=%s / error=%s",
405
  page.page_id,
406
  ai_error,
407
  )
@@ -517,7 +519,7 @@ async def analyze_project_batch_async(
517
  """
518
  프로젝트 내 'pending' 상태 페이지를 순차적으로 분석하고 결과 요약을 반환합니다.
519
  """
520
- logger.info("프로젝트 배치 분석 시작: project_id=%s", project_id)
521
  started_at = time.time()
522
 
523
  project = (
@@ -547,7 +549,7 @@ async def analyze_project_batch_async(
547
  }
548
 
549
  if not pending_pages:
550
- logger.warning("분석할 페이지가 없습니다. project_id=%s", project.project_id)
551
  return result_summary
552
 
553
  _update_project_status(project, "in_progress")
@@ -593,7 +595,7 @@ async def analyze_project_batch_async(
593
  result_summary["project_status_after"] = project.status
594
  result_summary["total_time"] = time.time() - started_at
595
  logger.info(
596
- "프로젝트 배치 분석 종료: project_id=%s / status=%s / success=%s / fail=%s / %.2fs",
597
  project.project_id,
598
  final_status,
599
  result_summary["successful_pages"],
@@ -654,7 +656,7 @@ async def analyze_project_batch_async_parallel(
654
  max_concurrent_pages 값을 조정하여 시스템 리소스에 맞게 최적화할 수 있습니다.
655
  """
656
  logger.info(
657
- "프로젝트 병렬 배치 분석 시작: project_id=%s, max_concurrent=%s",
658
  project_id,
659
  max_concurrent_pages,
660
  )
@@ -688,7 +690,7 @@ async def analyze_project_batch_async_parallel(
688
  }
689
 
690
  if not pending_pages:
691
- logger.warning("분석할 페이지가 없습니다. project_id=%s", project.project_id)
692
  return result_summary
693
 
694
  _update_project_status(project, "in_progress")
@@ -778,7 +780,7 @@ async def analyze_project_batch_async_parallel(
778
  result_summary["total_time"] = time.time() - started_at
779
 
780
  logger.info(
781
- "프로젝트 병렬 배치 분석 종료: project_id=%s / status=%s / success=%s / fail=%s / %.2fs",
782
  project.project_id,
783
  final_status,
784
  result_summary["successful_pages"],
 
285
  target = element_map.get(mock.element_id)
286
  if not target:
287
  logger.warning(
288
+ "정렬 결과에 존재하지만 DB에 없는 element_id={}", mock.element_id
289
  )
290
  continue
291
 
 
341
  개별 페이지에 대한 전체 파이프라인을 실행하고 결과 요약을 반환합니다.
342
  """
343
  logger.info(
344
+ "페이지 분석 시작: project_id={} / page_id={}",
345
+ project.project_id,
346
+ page.page_id,
347
  )
348
  page_start = time.time()
349
 
 
403
  )
404
  except Exception as ai_error:
405
  logger.error(
406
+ "AI 설명 생성 비동기 처리 실패: page_id={} / error={}",
407
  page.page_id,
408
  ai_error,
409
  )
 
519
  """
520
  프로젝트 내 'pending' 상태 페이지를 순차적으로 분석하고 결과 요약을 반환합니다.
521
  """
522
+ logger.info("프로젝트 배치 분석 시작: project_id={}", project_id)
523
  started_at = time.time()
524
 
525
  project = (
 
549
  }
550
 
551
  if not pending_pages:
552
+ logger.warning("분석할 페이지가 없습니다. project_id={}", project.project_id)
553
  return result_summary
554
 
555
  _update_project_status(project, "in_progress")
 
595
  result_summary["project_status_after"] = project.status
596
  result_summary["total_time"] = time.time() - started_at
597
  logger.info(
598
+ "프로젝트 배치 분석 종료: project_id={} / status={} / success={} / fail={} / {:.2f}s",
599
  project.project_id,
600
  final_status,
601
  result_summary["successful_pages"],
 
656
  max_concurrent_pages 값을 조정하여 시스템 리소스에 맞게 최적화할 수 있습니다.
657
  """
658
  logger.info(
659
+ "프로젝트 병렬 배치 분석 시작: project_id={}, max_concurrent={}",
660
  project_id,
661
  max_concurrent_pages,
662
  )
 
690
  }
691
 
692
  if not pending_pages:
693
+ logger.warning("분석할 페이지가 없습니다. project_id={}", project.project_id)
694
  return result_summary
695
 
696
  _update_project_status(project, "in_progress")
 
780
  result_summary["total_time"] = time.time() - started_at
781
 
782
  logger.info(
783
+ "프로젝트 병렬 배치 분석 종료: project_id={} / status={} / success={} / fail={} / {:.2f}s",
784
  project.project_id,
785
  final_status,
786
  result_summary["successful_pages"],
app/services/sorter_strategies.py CHANGED
@@ -78,7 +78,7 @@ def _env_float(name: str, default: float) -> float:
78
  return float(value)
79
  except ValueError:
80
  logger.warning(
81
- "환경 변수 %s 값 '%s'을(를) float로 변환하지 못했습니다. 기본값 %.2f을 사용합니다.",
82
  name,
83
  value,
84
  default,
 
78
  return float(value)
79
  except ValueError:
80
  logger.warning(
81
+ "환경 변수 {} 값 '{}'을(를) float로 변환하지 못했습니다. 기본값 {:.2f}을 사용합니다.",
82
  name,
83
  value,
84
  default,
app/services/text_version_service.py CHANGED
@@ -29,7 +29,11 @@ def _deactivate_existing_versions(db: Session, page_id: int) -> None:
29
  .update({"is_current": False}, synchronize_session=False)
30
  )
31
  if updated:
32
- logger.debug("페이지 %s의 기존 텍스트 버전 %s건을 비활성화했습니다.", page_id, updated)
 
 
 
 
33
 
34
 
35
  def _get_next_version_number(db: Session, page_id: int) -> int:
@@ -77,7 +81,7 @@ def create_text_version(
77
  db.commit()
78
 
79
  logger.info(
80
- "텍스트 버전 생성 완료: page_id=%s, version_id=%s, number=%s, type=%s",
81
  page.page_id,
82
  version.version_id,
83
  next_number,
@@ -120,7 +124,7 @@ def get_current_page_text(db: Session, page_id: int) -> Optional[Dict[str, Any]]
120
  )
121
  if not version:
122
  logger.warning(
123
- "페이지 %s의 현재 텍스트 버전을 찾을 수 없습니다. status=%s",
124
  page_id,
125
  page.analysis_status,
126
  )
@@ -162,7 +166,7 @@ def save_user_edited_version(
162
  )
163
  if deleted:
164
  logger.info(
165
- "CombinedResult 캐시 무효화: project_id=%s, 삭제된 레코드=%s",
166
  page.project_id,
167
  deleted,
168
  )
 
29
  .update({"is_current": False}, synchronize_session=False)
30
  )
31
  if updated:
32
+ logger.debug(
33
+ "페이지 {}의 기존 텍스트 버전 {}건을 비활성화했습니다.",
34
+ page_id,
35
+ updated,
36
+ )
37
 
38
 
39
  def _get_next_version_number(db: Session, page_id: int) -> int:
 
81
  db.commit()
82
 
83
  logger.info(
84
+ "텍스트 버전 생성 완료: page_id={}, version_id={}, number={}, type={}",
85
  page.page_id,
86
  version.version_id,
87
  next_number,
 
124
  )
125
  if not version:
126
  logger.warning(
127
+ "페이지 {}의 현재 텍스트 버전을 찾을 수 없습니다. status={}",
128
  page_id,
129
  page.analysis_status,
130
  )
 
166
  )
167
  if deleted:
168
  logger.info(
169
+ "CombinedResult 캐시 무효화: project_id={}, 삭제된 레코드={}",
170
  page.project_id,
171
  deleted,
172
  )