Files

1.9 KiB
Raw Permalink Blame History

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

Bağlantılar: Main, Index

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)
STREAMING true Streaming SSE streaming yanıtlarını etkinleştir/devre dışı bırak (true/false)
DB_TIMEZONE "" DBTimezone PostgreSQL oturum zaman dilimi (örn: Europe/Istanbul)

Önemli Detaylar

  • DB_MODE=sqliteDB_PATH değeri SQLite dosya yolu olarak kullanılır (varsayılan: data/gateway.db)
  • DB_MODE=pgs veya tanımsız → PostgreSQL bağlantısı (mevcut davranış)
  • POSTGRES_DSN ve DATABASE_DSN çifti desteklenir (birincil: POSTGRES_DSN)
  • OPENAI_KEY tanımlanmışsa, client Authorization header'ı 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