Python
dictConfig
logging.config.dictConfig ile gelişmiş yapılandırmayı öğrenirsin.
dictConfig
logging.config.dictConfig, bir sözlükten karmaşık günlükleme yapılandırması kurar. İşleyiciler, biçimler ve günlükleyiciler ayrı ayrı tanımlanır; bu, dosyadan yüklenen yapılandırmayla çalışmaya uygundur.
import logging.config
config = {
"version": 1,
"formatters": {"simple": {"format": "%(levelname)s:%(message)s"}},
"handlers": {"console": {"class": "logging.StreamHandler", "formatter": "simple"}},
"loggers": {"myapp": {"handlers": ["console"], "level": "DEBUG"}},
}
logging.config.dictConfig(config)
version: 1 her zaman verilir. Sözlük yapısı, birden çok günlükleyici ve işleyiciyi tek yerden yönetmeyi sağlar.
sözlük bölümleri
dictConfig sözlüğü dört ana bölüm içerir: formatters (biçimler), handlers (işleyiciler), loggers (günlükleyiciler) ve root (kök). Her bölüm bir sözlükler sözlüğüdür.
config = {
"version": 1,
"formatters": {"simple": {...}},
"handlers": {"console": {...}},
"loggers": {"myapp": {...}},
}
İşleyici, biçime adıyla başvurur; günlükleyici, işleyiciye adıyla başvurur. Bu, bileşenleri yeniden kullanılabilir kılar.
Uygulama dictConfig ile günlük yaz
import logging.config ile başla. config adında bir sözlük tanımla: "version": 1, "formatters": {"simple": {"format": "%(levelname)s:%(message)s"}}, "handlers": {"console": {"class": "logging.StreamHandler", "formatter": "simple"}}, "loggers": {"myapp": {"handlers": ["console"], "level": "DEBUG"}}. logging.config.dictConfig(config) çağrısı yap. logger = logging.getLogger("myapp") ile günlükleyici al. import logging satırını da ekle. logger.info("merhaba") yaz.
Örnek çözümü göster
import logging
import logging.config
config = {
"version": 1,
"formatters": {"simple": {"format": "%(levelname)s:%(message)s"}},
"handlers": {"console": {"class": "logging.StreamHandler", "formatter": "simple"}},
"loggers": {"myapp": {"handlers": ["console"], "level": "DEBUG"}},
}
logging.config.dictConfig(config)
logger = logging.getLogger("myapp")
logger.info("merhaba")
Kendini test et
-
dictConfig çağrısını tamamla
import logging.config
logging.config.____(config)
Cevabı göster
import logging.config
logging.config.dictConfig(config)
-
dictConfig sözlüğünde 'version' anahtarı ne yapar?
- Günlükleyici adını belirtir
- Yapı sürümünü belirtir
- Dosya yolunu belirtir
- Düzeyi belirtir
Cevabı göster
Yapı sürümünü belirtir — version anahtarı yapılandırma sürümünü belirtir; genelde 1 verilir.
-
dictConfig kavramlarını eşleştir
- version
- Sürümü belirtir
- formatters
- Biçimleri tanımlar
- handlers
- İşleyicileri tanımlar
- loggers
- Günlükleyicileri tanımlar
Sıradaki ders: Özet - Logging