구글드라이브 연동 로그 추가
This commit is contained in:
23
app.py
23
app.py
@@ -1,11 +1,15 @@
|
||||
from flask import Flask, render_template, request, jsonify, session, redirect, url_for
|
||||
import os
|
||||
import logging
|
||||
from functools import wraps
|
||||
from datetime import datetime
|
||||
from utils.word_processor import WordProcessor
|
||||
from utils.google_drive import GoogleDriveUploader
|
||||
from config import Config
|
||||
|
||||
logging.basicConfig(level=logging.INFO)
|
||||
logger = logging.getLogger(__name__)
|
||||
|
||||
app = Flask(__name__)
|
||||
app.config.from_object(Config)
|
||||
|
||||
@@ -29,17 +33,24 @@ drive_uploader = None
|
||||
try:
|
||||
# credentials.json 파일이 있는 경우에만 초기화 시도
|
||||
if os.path.exists(app.config['GOOGLE_DRIVE_CREDENTIALS_FILE']):
|
||||
logger.info(
|
||||
"구글 드라이브 업로더 초기화 시도 | credentials=%s token=%s",
|
||||
app.config['GOOGLE_DRIVE_CREDENTIALS_FILE'],
|
||||
app.config['GOOGLE_DRIVE_TOKEN_FILE'],
|
||||
)
|
||||
drive_uploader = GoogleDriveUploader(
|
||||
app.config['GOOGLE_DRIVE_CREDENTIALS_FILE'],
|
||||
app.config['GOOGLE_DRIVE_TOKEN_FILE']
|
||||
)
|
||||
logger.info("구글 드라이브 업로더 초기화 성공")
|
||||
else:
|
||||
logger.info("credentials.json이 없어 구글 드라이브 업로더를 초기화하지 않았습니다.")
|
||||
except FileNotFoundError:
|
||||
# 인증 파일이 없으면 조용히 넘어감
|
||||
pass
|
||||
logger.warning("구글 드라이브 인증 파일을 찾을 수 없습니다. 업로드 기능 비활성화.")
|
||||
except Exception as e:
|
||||
# 브라우저 관련 오류나 기타 오류는 조용히 처리
|
||||
# 서버 환경에서는 브라우저가 없을 수 있으므로 정상적인 상황
|
||||
pass
|
||||
logger.warning("구글 드라이브 초기화 중 오류 발생: %s", str(e))
|
||||
|
||||
@app.route('/auth', methods=['GET', 'POST'])
|
||||
def auth():
|
||||
@@ -157,12 +168,15 @@ def step5():
|
||||
|
||||
# 구글 드라이브 업로드
|
||||
if drive_uploader and app.config['GOOGLE_DRIVE_FOLDER_ID']:
|
||||
upload_filename = f"교리점검표_{all_data['basic_info'].get('name', '무명')}_{datetime.now().strftime('%Y%m%d_%H%M%S')}.docx"
|
||||
logger.info("구글 드라이브 업로드 시도 | file=%s, folder=%s", upload_filename, app.config['GOOGLE_DRIVE_FOLDER_ID'])
|
||||
try:
|
||||
file_id = drive_uploader.upload_file(
|
||||
output_path,
|
||||
f"교리점검표_{all_data['basic_info'].get('name', '무명')}_{datetime.now().strftime('%Y%m%d_%H%M%S')}.docx",
|
||||
upload_filename,
|
||||
app.config['GOOGLE_DRIVE_FOLDER_ID']
|
||||
)
|
||||
logger.info("구글 드라이브 업로드 성공 | file_id=%s", file_id)
|
||||
# 업로드 후 로컬 파일 삭제 (선택사항)
|
||||
# os.remove(output_path)
|
||||
return jsonify({
|
||||
@@ -171,6 +185,7 @@ def step5():
|
||||
'file_id': file_id
|
||||
})
|
||||
except Exception as e:
|
||||
logger.warning("구글 드라이브 업로드 실패: %s", str(e))
|
||||
# 업로드 실패 시 로컬 파일 경로 반환
|
||||
return jsonify({
|
||||
'success': True,
|
||||
|
||||
Reference in New Issue
Block a user