Bu makale makine çevirisi ayna makalesidir, orijinal makaleye geçmek için lütfen buraya tıklayın.

Görünüm: 56260|Yanıt: 3

[.NET Core] ASP.NET Core ILogger Log Kullanım Eğitimi

[Bağlantıyı kopyala]
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
Yayınlandı 23.11.2021 14:55:51 |
Üye olarak ücret aldıktan sonra neden hâlâ hiçbir şey göremiyorum?
Yayınlandı 23.11.2021 15:03:44 |
Öğrenmeye bir göz atın
Yayınlandı 16.03.2022 13:34:55 |
Öğrenmeyi öğren
Feragatname:
Code Farmer Network tarafından yayımlanan tüm yazılım, programlama materyalleri veya makaleler yalnızca öğrenme ve araştırma amaçları içindir; Yukarıdaki içerik ticari veya yasa dışı amaçlarla kullanılamaz, aksi takdirde kullanıcılar tüm sonuçları ödemelidir. Bu sitedeki bilgiler internetten alınmakta olup, telif hakkı anlaşmazlıklarının bu siteyle hiçbir ilgisi yoktur. Yukarıdaki içeriği indirmeden sonraki 24 saat içinde bilgisayarınızdan tamamen silmelisiniz. Programı beğendiyseniz, lütfen orijinal yazılımı destekleyin, kayıt satın alın ve daha iyi orijinal hizmetler alın. Herhangi bir ihlal olursa, lütfen bizimle e-posta yoluyla iletişime geçin.

Mail To:help@itsvse.com