2025-08-13 18:05:26 +02:00

33 lines
591 B
Python

from typing import Optional
from datetime import datetime
from pydantic import BaseModel, Field
from app.models.log import LogLevel
# Shared properties
class LogBase(BaseModel):
device_id: str
level: LogLevel = LogLevel.INFO
message: str
source: Optional[str] = None
# Properties to receive on log creation
class LogCreate(LogBase):
pass
# Properties shared by models stored in DB
class LogInDBBase(LogBase):
id: int
timestamp: datetime
class Config:
orm_mode = True
# Properties to return to client
class LogResponse(LogInDBBase):
pass