|
|
Yayınlandı 8.05.2019 14:43:01
|
|
|
|

ASP.NET Core, çok çeşitli yerleşik ve üçüncü taraf kayıt sağlayıcıları için kayıt API'lerini destekler. Günlük gelişimimizin vazgeçilmez bir özelliğidir.
Önce konsolun render şekillerine bakalım, aşağıdaki gibi:
Bir log sağlayıcısı ekle
Kayıt sağlayıcıları kayıtları gösterir veya depolar. Örneğin, bir konsol sağlayıcısı konsolda logları gösterir ve Azure Application Insights sağlayıcısı bu logları Azure Application Insights'ta saklar. Birden fazla sağlayıcı ekleyerek loglar birden fazla hedefe gönderilebilir.
Program dosyasını aşağıdaki şekilde düzenleyin:
Bir log oluşturun (yapıcı enjeksiyon)
Aşağıdaki kontrolcü örneği tüm seviyelerde loglar oluşturur.
Log seviyesi | Metni göster | Ön plan rengi | Arka plan rengi | İz | trce | Gri | Siyah | Hata Hata Atma | dbug | Gri | Siyah | Bilgi | Bilgi | DarkGreen | Siyah | Uyarı | uyarı | Sarı | Siyah | Hata | başarısız | Kırmızı | Siyah | Kritik | kritik | Beyaz | Kırmızı |
Referans bağlantıları:Bağlantı girişi görünür.
Projeyi aşağıdaki komutla çalıştırın, konsolda çıktı logunu görebilirsiniz.
Çıktıyı görmek için yerel URL'yi ziyaret edin.
Kontrol log seviyesi
Biz değilizKonsolun bu kadar çok anlamsız bilgi kaydı çıkarmasını istemem, sadece kaydettiğim önemli kayıtları görmek istiyorum, ne yapmalıyım?
1: Yapılandırma dosyası üzerinden log seviyesini kontrol edin ve dosyayı aşağıdaki şekilde appsettings.json düzenleyin:
Bu JSON, 6 filtreleme kuralı oluşturacak: 1 ayıklama sağlayıcıları için, 4 konsol sağlayıcıları için ve 1 tüm sağlayıcılar için. Bir ILogger nesnesi oluşturduğunuzda, her sağlayıcı için bir kural seçin.
2: Kod kontrolü (test yok)
İkinci AddFilter, hata ayıklama sağlayıcısını belirtmek için tip adını kullanır. İlk AddFilter tüm sağlayıcılar için geçerlidir çünkü sağlayıcı türünü belirtmez.
Varsayılan minimum seviye
Minimum seviye ayarı, yapılandırma veya koddaki kurallar belirli bir sağlayıcı ve kategoriye uygulanmıyorsa geçerlidir. Aşağıdaki örnek, minimum seviyenin nasıl ayarlanacağını gösterir:
Minimum seviye açıkça belirlenmediyse, varsayılan değer Bilgi'dir ve bu değeri temsil ederİzleme ve hata hata alma günlükleri göz ardı edilecek。
Referans bağlantıları:Bağlantı girişi görünür.
ILogger loglarını properties üzerinden enjekte etmek için Autofac kullanın
Genellikle, log servislerini yapıcılar aracılığıyla enjekte ediyoruz, nitelikler aracılığıyla nasıl enjekte edilir? ILogger'ı Autofac'a başka nasıl barındırabilirim?
Startup düzenleme yöntemi ConfigureServices'te aşağıdaki gibidir:
Aşağıdaki dört önemli cümle:
Eklediğinizden emin olunloggerFactory.AddConsole();Bu kod satırı, aksi takdirde konsolHiçbir şey çıkış değilve otomatik hosting ile yapılandırma dosyası geçersiz olur.
Kontrolör Kodu:
URL'ye erişin, dotnet çalıştırma işlemi projeyi başlatır ve konsol çıktısı şu şekildedir:
Logları ILogger'ı özellikler aracılığıyla diğer sınıflara nasıl enjekte edilir.
(Son)
|
Önceki:ASP.NET Core, IOC enjeksiyonunu uygulamak için Autofac kullanırÖnümüzdeki:ASP.NET Core, AOP müdahalesini uygulamak için Autofac kullanır
|