Comment utiliser une journalisation personnalisée en C#

How to use Custom Logging in C#

This article was translated from English: Does it need improvement?
Translated
View the article in English

La journalisation personnalisée fait référence à la mise en place d'un système de journalisation adapté aux besoins et exigences spécifiques d'une application ou d'un système. Cela consiste à créer et utiliser des fichiers log pour enregistrer des informations, des événements et des messages générés par le logiciel lors de son fonctionnement.

heading:2(Quickstart : Implémenter la journalisation personnalisée avec IronPDF)

Commencez rapidement avec la journalisation personnalisée en C# en utilisant IronPDF. Ce guide vous montre comment définir le LoggingMode sur Custom et le lier à votre classe de logger personnalisée. Surveillez et gérez efficacement les journaux de votre application en dirigeant les messages de IronPDF vers votre logger personnalisé. Il est facile à configurer et vous permet d'améliorer les capacités de journalisation de votre application en les adaptant à vos besoins uniques.

Nuget IconGet started making PDFs with NuGet now:

  1. Install IronPDF with NuGet Package Manager

    PM > Install-Package IronPdf

  2. Copy and run this code snippet.

    IronSoftware.Logger.LoggingMode = IronSoftware.Logger.LoggingModes.Custom;
    IronSoftware.Logger.CustomLogger = new MyCustomLogger();
  3. Deploy to test on your live environment

    Start using IronPDF in your project today with a free trial
    arrow pointer
class="hsg-featured-snippet">

Flux de travail minimal (5 étapes)

  1. Téléchargez IronPDF depuis NuGet
  2. Définissez la propriété LoggingMode sur LoggingModes.Custom
  3. Assignez la propriété CustomLogger à votre objet logger personnalisé
  4. Tous les messages de log seront redirigés vers le logger personnalisé
  5. Affichez les messages de log pour voir les journaux


Exemple de journalisation personnalisée

Pour utiliser la fonctionnalité de journalisation personnalisée, changez la propriété LoggingMode en LoggingModes.Custom. Ensuite, assignez la propriété CustomLogger à la classe de logger personnalisée que vous avez créée.

:path=/static-assets/pdf/content-code-examples/how-to/custom-logging-custom-logging.cs
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")
$vbLabelText   $csharpLabel

Les logs de IronPdf seront dirigés vers l'objet logger personnalisé. Les messages resteront identiques à ceux du logger IronPdf; ils seront simplement relayés au logger personnalisé. La façon dont le logger personnalisé gère les messages sera déterminée par le concepteur du logger personnalisé. Utilisons la classe de logger personnalisé suivante comme exemple.

:path=/static-assets/pdf/content-code-examples/how-to/custom-logging-custom-logging-class.cs
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 Class
$vbLabelText   $csharpLabel

Dans ce cas, j'ai préfixé les messages de log avec des informations supplémentaires.

class="content-img-align-center">
class="center-image-wrapper"> Fenêtre de console

Prêt à voir ce que vous pouvez faire d'autre ? Consultez notre page de tutoriels ici : Fonctionnalités supplémentaires

Questions Fréquemment Posées

Comment puis-je implémenter la journalisation personnalisée en C#?

Vous pouvez implémenter la journalisation personnalisée en C# en utilisant IronPDF. Tout d'abord, téléchargez IronPDF depuis NuGet, puis définissez la propriété LoggingMode sur LoggingModes.Custom, et attribuez votre objet logger personnalisé à la propriété CustomLogger. Cette configuration garantit que tous les messages de journal sont dirigés vers votre logger personnalisé.

Quelles étapes sont nécessaires pour commencer la journalisation personnalisée avec IronPDF?

Pour commencer la journalisation personnalisée avec IronPDF, téléchargez la bibliothèque depuis NuGet, définissez le LoggingMode sur LoggingModes.Custom, attribuez un logger personnalisé à la propriété CustomLogger, et assurez-vous que tous les messages de journal sont transmis à votre logger pour la sortie.

Quel est le rôle de la propriété CustomLogger dans IronPDF?

La propriété CustomLogger dans IronPDF vous permet d'attribuer un objet logger personnalisé. Cette fonctionnalité transmet tous les messages de journal au logger personnalisé, vous permettant de gérer comment les journaux sont enregistrés et affichés selon les besoins de votre application.

Pouvez-vous fournir un exemple détaillé de mise en place d'un logger personnalisé en C#?

Bien sûr! Pour mettre en place un logger personnalisé en C#, vous devez implémenter l'interface ILogger d'IronPDF. Définissez des méthodes comme LogInformation, LogWarning, et LogError pour gérer divers messages de journal, puis attribuez votre logger personnalisé à la propriété CustomLogger.

Pourquoi devrais-je utiliser la journalisation personnalisée dans mon application C#?

La journalisation personnalisée est bénéfique dans une application C# car elle vous permet de créer un système de journalisation qui répond à vos besoins spécifiques. Cette personnalisation améliore la supervision, le débogage et la maintenance en fournissant des informations de journal détaillées et pertinentes.

Quels sont les avantages d'utiliser la journalisation personnalisée avec IronPDF?

Utiliser la journalisation personnalisée avec IronPDF offre une flexibilité dans la gestion des messages de journal. Cela vous permet de personnaliser la journalisation pour répondre aux exigences de votre application, assurant que vous capturez et traitez les messages de journal de la manière la plus efficace pour vos processus.

Comment l'interface ILogger soutient-elle la journalisation personnalisée?

L'interface ILogger soutient la journalisation personnalisée en fournissant une structure que vous devez implémenter dans votre logger personnalisé. Elle inclut des méthodes pour gérer différents types de messages de journal, assurant des capacités de journalisation complètes.

Quels types de messages peuvent être enregistrés à l'aide d'un logger personnalisé dans IronPDF?

Un logger personnalisé dans IronPDF peut gérer une variété de messages de journal, y compris les messages d'information, d'avertissement et d'erreur. Cette capacité de journalisation complète garantit que vous disposez d'enregistrements détaillés des opérations de votre application.

La journalisation personnalisée d'IronPDF est-elle entièrement prise en charge dans .NET 10 ?

Oui. IronPDF est entièrement compatible avec .NET 10, y compris ses fonctionnalités de journalisation personnalisées. Vous pouvez utiliser LoggingModes.Custom et assigner un enregistreur personnalisé via CustomLogger dans un projet .NET 10 sans aucune manipulation supplémentaire.

Chaknith Bin
Ingénieur logiciel
Chaknith travaille sur IronXL et IronBarcode. Il a une expertise approfondie en C# et .NET, aidant à améliorer le logiciel et à soutenir les clients. Ses idées issues des interactions avec les utilisateurs contribuent à de meilleurs produits, documentation et expérience globale.
Prêt à commencer?
Nuget Téléchargements 16,154,058 | Version : 2025.11 vient de sortir