INNER CODE UNIT · Python
create_app
caipe-io/ai-platform-engineering · ai_platform_engineering/audit_service/main.py:191
def create_app(settings: Settings | None = None) -> FastAPI:
settings = settings or Settings.from_env()
if settings.backend == "local":
store = LocalAuditStore(settings.local_path, gzip_enabled=settings.local_gzip)
elif settings.backend == "s3":
store = S3AuditStore(
bucket=settings.s3_bucket,
prefix=settings.s3_prefix,
region=settings.s3_region,
endpoint_url=settings.s3_endpoint_url,
)
else:
raise RuntimeError(f"Unsupported AUDIT_SERVICE_BACKEND={settings.backend!r}; expected 'local' or 's3'")
queue_service = AuditQueueService(
store,
queue_max_size=settings.queue_max_size,
flush_batch_size=settings.flush_batch_size,
flush_interval_seconds=settings.flush_interval_seconds,