recipe-app / utils /models.py
ronheichman's picture
Deploy recipe web app
ed3c16c verified
Raw
History Blame Contribute Delete
2.76 kB
"""Pydantic models for structured logging payloads."""
from __future__ import annotations
from pydantic import BaseModel
class LogPayloadBase(BaseModel):
"""Base model for structured log payloads."""
attempted: int | None = None
checked: int | None = None
compressed_filename: str | None = None
count: int | None = None
db_path: str | None = None
db_timestamp: str | None = None
decompress_failed: int | None = None
decompress_needed: int | None = None
decompressed_filename: str | None = None
dest_dir: str | None = None
drive_md5: str | None = None
error: str | None = None
field: str | None = None
file_id: str | None = None
file_name: str | None = None
filename: str | None = None
filepath: str | None = None
files: str | None = None
final_path: str | None = None
folder_id: str | None = None
function_name: str | None = None
gz_path: str | None = None
html_len: int | None = None
item: str | None = None
key: str | None = None
kwargs: str | None = None
label: str | None = None
length: int | None = None
local_md5: str | None = None
limit: int | None = None
map_keys: str | None = None
md5: str | None = None
missing_files: str | None = None
mode: str | None = None
original_label: str | None = None
output: str | None = None
output_pdf_path: str | None = None
previous_db_timestamp: str | None = None
params_json: str | None = None
current_db_timestamp: str | None = None
cache_dir: str | None = None
cache_type: str | None = None
path: str | None = None
pdf_path: str | None = None
progress: int | None = None
query: str | None = None
query_text: str | None = None
refinement_limit: int | None = None
selection: str | None = None
skipped: int | None = None
source_path: str | None = None
stderr: str | None = None
template: str | None = None
timestamp: str | None = None
title: str | None = None
type: str | None = None
username: str | None = None
verify_failed: int | None = None
total_candidates: int | None = None
class FileOperationPayload(LogPayloadBase):
"""Payload for file operations."""
file_path: str | None = None
class GDrivePayload(FileOperationPayload):
"""Payload for Google Drive operations."""
gdrive_id: str | None = None
gdrive_folder: str | None = None
md5_hash: str | None = None
class DbPayload(LogPayloadBase):
"""Payload for database operations."""
class ErrorPayload(LogPayloadBase):
"""Payload for error logging."""
error_message: str | None = None
class FuncPayload(LogPayloadBase):
"""Payload including a function name."""