-
Notifications
You must be signed in to change notification settings - Fork 1
Expand file tree
/
Copy pathconfig.py
More file actions
25 lines (19 loc) · 821 Bytes
/
Copy pathconfig.py
File metadata and controls
25 lines (19 loc) · 821 Bytes
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
from pydantic_settings import BaseSettings, SettingsConfigDict
class Settings(BaseSettings):
"""
Konfigurasi aplikasi menggunakan Pydantic.
Pengaturan dapat diambil dari environment variables atau file .env.
"""
# URL dasar untuk endpoint KAI
KAI_BASE_URL: str = "https://booking.kai.id"
# Timeout permintaan HTTP (dalam detik)
REQUEST_TIMEOUT: int = 60
# Pengaturan cache: jumlah maksimum item dan TTL (detik)
CACHE_MAX_SIZE: int = 128
CACHE_TTL: int = 900
# Level logging aplikasi (misal: DEBUG, INFO, WARNING, ERROR)
LOG_LEVEL: str = "INFO"
# Konfigurasi pemuatan dari file .env (jika tersedia)
model_config = SettingsConfigDict(env_file=".env", env_file_encoding='utf-8')
# Instance tunggal settings untuk diimpor oleh modul lain
settings = Settings()