CA1848: LoggerMessage temsilcilerini kullanma
Özellik | Değer |
---|---|
Kural Kimliği | CA1848 |
Başlık | LoggerMessage temsilcilerini kullanma |
Kategori | Performans |
Hataya neden olan veya bozulmayan düzeltme | Hataya neden olmayan |
.NET 9'da varsayılan olarak etkin | Hayır |
Neden
ve LogDebuggibi LogInformation günlükçü uzantısı yöntemlerinin kullanımı.
Kural açıklaması
Yüksek performanslı günlük senaryoları için deseni LoggerMessage kullanın.
İhlalleri düzeltme
Bu kuralın ihlallerini düzeltmek için kullanın LoggerMessage
.
LoggerMessage Logger uzantısı yöntemlerine göre aşağıdaki performans avantajlarını sağlar:
- Günlükçü uzantısı yöntemleri, gibi
int
"boxing" (dönüştürme) değer türlerini içine gerektirirobject
. Desen, LoggerMessage kesin olarak yazılan parametrelerle statik Action alanlar ve uzantı yöntemleri kullanarak kutulama yapmaktan kaçınır. - Günlükçü uzantısı yöntemleri, günlük iletisi her yazıldıktan sonra ileti şablonunu (adlandırılmış biçim dizesi) ayrıştırmalıdır. LoggerMessage bir şablonun yalnızca ileti tanımlandığında ayrıştırılması gerekir.
Uyarıların ne zaman bastırılması gerekiyor?
Bu kuraldan uyarıyı bastırmayın.
Ayrıca bkz.
GitHub'da bizimle işbirliği yapın
Bu içeriğin kaynağı GitHub'da bulunabilir; burada ayrıca sorunları ve çekme isteklerini oluşturup gözden geçirebilirsiniz. Daha fazla bilgi için katkıda bulunan kılavuzumuzu inceleyin.