1.7 KiB
1.7 KiB
Config
Özet: Tüm runtime konfigürasyonu .env dosyasından okur (config/config.go:9). Hiçbir varsayılan IP veya port sabit kodlanmamıştır — tüm değerler os.Getenv() ile okunur.
Kütüphaneler: Go os, strconv
Parametreler
| Değişken | Varsayılan | Config Alanı | Açıklama |
|---|---|---|---|
PORT |
8000 |
Port |
HTTP dinleme portu |
OPENAI_BACKEND |
https://api.deepseek.com |
OpenAIBackend |
Upstream LLM backend base URL |
OPENAI_KEY |
"" |
OpenAIApiKey |
Opsiyonel API anahtarı (otomatik enjekte) |
DB_MODE |
pgs |
DBMode |
Veritabanı motoru: sqlite veya pgs |
DB_PATH |
data/gateway.db |
DBPath |
SQLite veritabanı dosya yolu (DB_MODE=sqlite iken) |
LOG_LEVEL |
info |
LogLevel |
Konsol log seviyesi: debug (her şey), info (özet), warn (sadece hatalar) |
POSTGRES_DSN / DATABASE_DSN |
"" |
PostgresDSN |
PostgreSQL bağlantı DSN (DB_MODE=pgs iken) |
REQUEST_TIMEOUT_SECONDS |
30 |
RequestTimeoutSeconds |
Upstream istek zaman aşımı (saniye) |
OPENAI_MODEL |
"" |
OpenAIModel |
Varsayılan model adı (istekte model yoksa enjekte edilir) |
Önemli Detaylar
DB_MODE=sqlite→DB_PATHdeğeri SQLite dosya yolu olarak kullanılır (varsayılan:data/gateway.db)DB_MODE=pgsveya tanımsız → PostgreSQL bağlantısı (mevcut davranış)POSTGRES_DSNveDATABASE_DSNçifti desteklenir (birincil:POSTGRES_DSN)OPENAI_KEYtanımlanmışsa, clientAuthorizationheader'ı göndermediğinde otomatik enjekte edilir- Tüm değerler
os.Getenv()ile okunur - Config struct'ı main.go'da bir kez yüklenir ve tüm handler'lara pointer olarak geçilir