Cybersecurity-Projects/PROJECTS/advanced/ai-threat-detection/backend/app/config.py

46 lines
1005 B
Python

"""
©AngelaMos | 2026
config.py
"""
from pydantic_settings import BaseSettings, SettingsConfigDict
class Settings(BaseSettings):
"""
Application configuration loaded from environment variables.
"""
model_config = SettingsConfigDict(
env_file=".env",
env_file_encoding="utf-8",
case_sensitive=False,
)
app_name: str = "AngelusVigil"
env: str = "development"
debug: bool = False
host: str = "0.0.0.0"
port: int = 8000
api_key: str = ""
log_level: str = "INFO"
database_url: str = "postgresql+asyncpg://vigil:changeme@localhost:5432/angelusvigil"
redis_url: str = "redis://localhost:6379"
geoip_db_path: str = "/usr/share/GeoIP/GeoLite2-City.mmdb"
nginx_log_path: str = "/var/log/nginx/access.log"
raw_queue_size: int = 1000
parsed_queue_size: int = 500
feature_queue_size: int = 200
alert_queue_size: int = 100
batch_size: int = 32
batch_timeout_ms: int = 50
settings = Settings()