hyerimmy 910bd902b1
Some checks failed
HealthSync Intelligence CI / build-and-push (push) Has been cancelled
feat : initial commit
2025-06-20 05:28:30 +00:00

34 lines
993 B
Python

"""
HealthSync AI 기본 서비스 클래스
"""
from abc import ABC
from app.config.settings import settings
import logging
import time
from datetime import datetime
class BaseService(ABC):
"""기본 서비스 추상 클래스"""
def __init__(self):
self.settings = settings
self.logger = logging.getLogger(self.__class__.__name__)
self._start_time = time.time()
def get_uptime(self) -> float:
"""서비스 가동 시간 반환 (초)"""
return time.time() - self._start_time
def log_operation(self, operation: str, user_id: int = None, **kwargs):
"""작업 로그 기록"""
log_data = {
"operation": operation,
"timestamp": datetime.now().isoformat(),
"service": self.__class__.__name__
}
if user_id:
log_data["user_id"] = user_id
log_data.update(kwargs)
self.logger.info(f"Operation: {operation}", extra=log_data)