How to use Custom Logging in C#
C# içinde özel loglama, uygulamaya özgü olayları ve mesajları yakalayan özel bir loglama sistemi oluşturmanıza olanak tanır. IronPDF ile tüm PDF işleme kayıtlarını LoggingMode'yi Custom yaparak ve logger uygulamanızı atayarak özel logger'ınıza yönlendirebilirsiniz. Bu özellik, NLog, Serilog, log4net veya özel bir çözüm kullanıyor olsanız da, IronPDF'nin detaylı loglama çıktısını mevcut loglama altyapınızla entegre etmenizi sağlar.
Özel loglama, birden fazla bileşenden logları merkezi hale getirmek, özel format uygulamak, ciddiyet seviyelerine göre filtrelemek veya dosyalar, veritabanları veya izleme hizmetleri gibi belirli yerlere logları yönlendirmek gerektiğinde değerlidir. IronPDF ile özel loglamayı uygulayarak, PDF oluşturma ve işleme olaylarının uygulamanızda nasıl izlendiği üzerinde tam kontrol sağlarsınız.
Hızlı Başlangıç: IronPDF ile Özel Loglama UygulayınIronPDF kullanarak C#'da özel loglama ile başlayın. Bu kılavuz, LoggingMode'yi Custom olarak ayarlamayı ve logger sınıfınızla nasıl bağlayacağınızı gösterir. IronPDF mesajlarını uygulama loglarını izlemek ve yönetmek için özel logunuza yönlendirin. Kurulum basittir ve uygulamanızın log yeteneklerini artırır. IronPDF'nin özelliklerinin kapsamlı bir özetini görmek için Hızlı Başlangıç Kılavuzumuzu inceleyin.
-
1Install IronPDF with NuGet Package Manager
-
2Bu kod parçacığını kopyalayın ve çalıştırın.
IronSoftware.Logger.LoggingMode = IronSoftware.Logger.LoggingModes.Custom; IronSoftware.Logger.CustomLogger = new MyCustomLogger();C# -
3Canlı ortamınızda test için dağıtım yapın
Ücretsiz deneme ile bugün projenizde IronPDF kullanmaya başlayın
Asgari İş Akışı (5 adım)
- IronPDF'yu NuGet'ten İndirin
- LoggingMode özelliğini
LoggingModes.Customolarak ayarlayın - CustomLogger özelliğini özel logger nesnenize atayın
- Tüm log mesajları özel loglayıcıya yönlendirilecek
- Logları görmek için log mesajlarını çıktıya alın
Özel Bir Loglama Örneği Nasıl Uygulanır?
Özel loglama kullanmak için LoggingMode özelliğini LoggingModes.Custom olarak değiştirin. Daha sonra CustomLogger özelliğini özel logger sınıfınıza atayın. Bu, çeşitli log çerçeveleriyle entegrasyon için esneklik sağlar ve uygulamanızda tutarlı loglama modelleri sürdürür.
Uygulama, minimal ayar gerektirir. Bir kez yapılandırıldığında, IronPDF'nin tüm operasyonları — HTML'den PDF'e dönüştürme, PDF manipülasyonu ve renderleme dahil — log mesajlarını otomatik olarak özel loglayıcınız üzerinden gönderir. Bu entegrasyon, PDF işleme operasyonları hakkında kritik bilgileri yakalamanızı sağlar.
IronPDF ile Neden Özel Loglama Kullanmalıyım?
IronSoftware.Logger.LoggingMode = IronSoftware.Logger.LoggingModes.Custom;
IronSoftware.Logger.CustomLogger = new CustomLoggerClass("logging");IronSoftware.Logger.LoggingMode = IronSoftware.Logger.LoggingModes.Custom
IronSoftware.Logger.CustomLogger = New CustomLoggerClass("logging")IronPDF logları özel loglayıcı nesnesine yönlendirilecek. Mesajlar, IronPDF loglayıcısındaki ile aynı kalır; Özel loglayıcıya iletilirler. Özel loglayıcı uygulaması, mesajları nasıl ele alacağını belirler. Aşağıdaki özel loglayıcı sınıf örneğini dikkate alın.
Özel loglama, üretim uygulamaları için birkaç avantaj sunar:
- Merkezi Log Yönetimi: IronPDF loglarını mevcut loglama altyapınızla entegre edin
- Geliştirilmiş Hata Ayıklama: Sorun gidermek için PDF işlemleri hakkında ayrıntılı bilgi yakalayın
- Performans İzleme: Render sürelerini ve kaynak kullanımını izleyin
- Hata İzleme: PDF oluşturmada başarısızlıkları otomatik olarak yakalayın ve raporlayın
- Uyumluluk: Düzenlenmiş sektörlerde belge oluşturma için denetim kayıtlarını sürdürün
Asenkron işleme gerektiren uygulamalar için, özel loglama eşzamanlı PDF işlemlerini izlemeye ve potansiyel darboğazları tanımlamaya yardımcı olur.
Özel Bir Loglayıcı Sınıf Nasıl Görünür?
public class CustomLoggerClass : ILogger
{
private readonly string categoryName;
public CustomLoggerClass(string categoryName)
{
this.categoryName = categoryName;
}
public IDisposable BeginScope<TState>(TState state)
{
return null;
}
public bool IsEnabled(LogLevel logLevel)
{
return true;
}
public void Log<TState>(LogLevel logLevel, EventId eventId, TState state, Exception exception, Func<TState, Exception, string> formatter)
{
if (!IsEnabled(logLevel))
{
return;
}
// Implement your custom logging logic here.
string logMessage = formatter(state, exception);
// You can use 'logLevel', 'eventId', 'categoryName', and 'logMessage' to log the message as needed.
// For example, you can write it to a file, console, or another destination.
// Example: Writing to the console
Console.WriteLine($"[{logLevel}] [{categoryName}] - {logMessage}");
}
}Public Class CustomLoggerClass
Implements ILogger
Private ReadOnly categoryName As String
Public Sub New(ByVal categoryName As String)
Me.categoryName = categoryName
End Sub
Public Function BeginScope(Of TState)(ByVal state As TState) As IDisposable
Return Nothing
End Function
Public Function IsEnabled(ByVal logLevel As LogLevel) As Boolean
Return True
End Function
Public Sub Log(Of TState)(ByVal logLevel As LogLevel, ByVal eventId As EventId, ByVal state As TState, ByVal exception As Exception, ByVal formatter As Func(Of TState, Exception, String))
If Not IsEnabled(logLevel) Then
Return
End If
' Implement your custom logging logic here.
Dim logMessage As String = formatter(state, exception)
' You can use 'logLevel', 'eventId', 'categoryName', and 'logMessage' to log the message as needed.
' For example, you can write it to a file, console, or another destination.
' Example: Writing to the console
Console.WriteLine($"[{logLevel}] [{categoryName}] - {logMessage}")
End Sub
End ClassBu uygulama, .NET loglama ekosistemi ile uyumlu hale getiren standart Microsoft.Extensions.Logging.ILogger arayüzünü takip eder. Loglayıcı sınıfı şu öğeleri içerir:
- Kategori Adı: Log mesajlarının kaynağını tanımlamaya yardımcı olur
- Log Seviyesi Filtreleme: Hangi ciddiyet seviyelerinin yakalanacağını kontrol edin
- Esnek Çıkış: Logları herhangi bir hedefe yönlendirin (konsol, dosya, veritabanı vb.)
- İstisna İşleme: İstisnalara ait detayları düzgünce biçimlendirip loglayın
- Durum Yönetimi:
BeginScopeile yapılandırılmış loglama desteği
Gelişmiş senaryolar için, karmaşık HTML dönüştürmeleri veya Chrome render motoru ile çalışırken günlük çıktısını etkileyen render seçeneklerini keşfedin.
Özel Günlük Çıktısı Nasıl Görünür?
Bu örnekte, log mesajları ek bilgiyle öne eklenmiştir.

Konsol çıktısı, özel loglamanın IronPDF'nin iç operasyonlarına dair ayrıntılı içgörüler sağladığını gösterir. Görebileceğiniz öğeler:
- Chrome istemci başlatma adımları
- Dağıtım adayı oluşturma
- Yerel kütüphane yükleme dizileri
- Başarılı bileşen dağıtım onayları
Bu ayrıntı seviyesi, PDF oluşturma sorunları veya performans optimizasyonlarıyla uğraşırken paha biçilmezdir. Yapılandırılmış format, logları programlı bir şekilde işlemenizi veya log analizi araçlarıyla entegre etmenizi kolaylaştırır.
IronSuite, operasyonlarımızda kritik bir rol oynar. Bunlar, iş süreçlerinde verimliliği artıran, kat planları oluşturmak ve envanter yönetimini geliştirmek gibi araçlardır.
Özel Loglama Uygulaması için En İyi Uygulamalar
IronPDF ile özel loglamayı uygularken şu en iyi uygulamaları dikkate alın:
- Uygun Log Seviyeleri Kullanın: Log layıcınızı, aşırı log depolamayı önlemek için doğru ayrıntı seviyesi yakalayacak şekilde yapılandırın
- Bağlamsal Bilgi Dahil Edin: PDF işlemleriyle ilişkilendirmek için iste ID'leri, kullanıcı bilgileri veya işlem detayları ekleyin
- Hassas Verileri İşleyin: Log layıcınızın PDF içeriğinden gizli bilgileri açığa çıkarmadığından emin olun
- Performansı İzleyin: Optimize etme fırsatlarını tanımlamak için PDF oluşturma sürelerini izleyin
- Uyarılar Kurun: Kritik hatalar veya performans düşüşü için bildirimler yapılandırın
Özellikle lisans anahtarlarını kullanırken üretim dağıtımlarında, uygun loglama, sorunsuz işlemler ve hızlı sorun çözümü sağlar.
Yaygın Loglama Sorunlarını Giderme
Özel loglama ile ilgili sorunlarla karşılaşırsanız:
- Logger'ınızın
ILoggerarayüzünü doğru şekilde uyguladığını doğrulayın - Herhangi bir IronPDF işlemi öncesinde
LoggingModeayarlı olduğundan emin olun - Log layıcınızın eşzamanlı işlemler için thread-güvenli olduğundan emin olun
- Dosyalar veya harici sistemlere yazarken log izinlerini inceleyin
Ek sorun giderme kaynakları için, sorun giderme kılavuzumuza başvurun veya loglama özellikleri ve yöntemleri hakkında ayrıntılı belge için API Referansımıza göz atın.
Başka neler yapabileceğinizi görmek için hazır mısınız? Öğretici sayfamızdan daha fazla özelliği burada kontrol edin: Ek Özellikler
Sıkça Sorulan Sorular
C#'ta özel günlükleme nedir ve PDF işlemesi ile nasıl çalışır?
C# ile IronPDF'de özel günlükleme, PDF işleme olaylarını ve mesajlarını yakalayan kişiselleştirilmiş bir günlük sistemi uygulamanıza olanak tanır. LoggingMode'yi Custom olarak ayarlayarak ve kendi günlüklemeyi uygulayarak, IronPDF tüm PDF oluşturma ve manipülasyon günlüklerini özel günlükçünüze yönlendirir, böylece mevcut günlükleme altyapılarıyla NLog, Serilog veya log4net gibi entegre çalışabilir.
PDF işlemleri için özel günlüklemeyi nasıl etkinleştiririm?
IronPDF'de özel günlüklemeyi etkinleştirmek için IronSoftware.Logger.LoggingMode'yi LoggingModes.Custom olarak ayarlayın ve CustomLogger sınıfınızı IronSoftware.Logger.CustomLogger'a atayın. Yapılandırma tamamlandığında, HTML'den PDF dönüşümü ve PDF işlemesi dahil tüm IronPDF işlemleri, günlük mesajlarını otomatik olarak özel günlükçünüz aracılığıyla gönderecektir.
PDF oluşturma için özel günlükleme uygulamanın faydaları nelerdir?
IronPDF ile özel günlükleme, PDF işleme olaylarını nasıl izlediğinizi tam kontrol altına almanızı sağlar. Çeşitli bileşenlerden gelen günlükleri tek bir merkezde toplamanızı, özel biçimlendirme uygulamanızı, önem seviyesi ile filtrelemenizi ve günlükleri dosyalar, veritabanları veya izleme servisleri gibi belirli yerlere yönlendirmenizi sağlar, böylece uygulamanızın günlükleme yeteneklerini artırır.
PDF işleme günlüklerini mevcut günlükleme çerçeveleriyle entegre edebilir miyim?
Evet, IronPDF'in özel günlükleme özelliği NLog, Serilog, log4net gibi popüler günlükleme çerçeveleriyle veya herhangi bir özel günlükleme çözümü ile sorunsuzca entegre olur. Bu, PDF işleme operasyonlarıyla ilgili kritik bilgileri kaydederken, uygulamanızda tutarlı günlükleme kalıpları sağlar.
Özel günlükleme uygulamak için minimum iş akışı nedir?
Minimum iş akışı 5 adım içerir: NuGet'ten IronPDF'i indirin, LoggingMode'yi LoggingModes.Custom olarak ayarlayın, CustomLogger'ı özel günlükçü nesnenize atayın ve tüm günlük mesajları özel günlükçünüze yönlendirilir. Son olarak, IronPDF işlemlerinden günlükleri görüntülemek için günlük mesajlarını çıktı alın.
Can IronPDF custom logging work with threads?
Yes, when utilizing custom logging in IronPDF, ensure your logger implementation is thread-safe to handle concurrent PDF operations without data inconsistencies or log corruption.
What is the role of log level filtering in IronPDF's custom logging?
Log level filtering allows you to control which severity levels of logs are captured, enabling you to focus on critical messages while reducing log noise for more efficient log storage management.
How does custom logging integrate with log analysis tools?
IronPDF's custom logging produces structured log entries that can be easily consumed by log analysis tools, aiding in the seamless parsing of logs, performance monitoring, and issue detection across the application.
What are the troubleshooting steps for custom logging issues in IronPDF?
For troubleshooting, verify your logger correctly implements `ILogger`, ensure `LoggingMode` is set before any operations, confirm thread safety, and check permissions if writing logs to external systems.
How does custom logging benefit applications with asynchronous operations?
Custom logging in IronPDF assists asynchronous applications by tracking concurrent operations, identifying bottlenecks, and ensuring log messages are adequately captured and correlated despite execution order.

Curtis Chau, Bilgisayar Bilimleri alanında Lisans Derecesine (Carleton Üniversitesi) sahip ve Node.js, TypeScript, JavaScript ve React konularında uzmanlaşmış ön uç geliştirmeyle ilgileniyor. Sezgisel ve estetik açıdan hoş kullanıcı arayüzleri oluşturma tutkunu, Curtis modern çerçevelerle çalışmayı ve iyi yapılandırılmış, görsel olarak çekici kılavuzlar oluşturmayı seviyor.