Implementeer aangepaste logger c# in GroupDocs.Redaction voor .NET

Het efficiënt beheren van documentredacties is cruciaal, vooral bij het omgaan met gevoelige informatie. In deze gids leer je hoe je een custom logger c# implementeert met GroupDocs.Redaction voor .NET, waardoor je volledige controle krijgt over logging, foutafhandeling en audit trails.

Snelle antwoorden

  • Wat doet een custom logger c#? Het legt fouten, waarschuwingen en informatieve berichten vast tijdens de redactie.
  • Welke bibliotheek levert de ILogger interface? GroupDocs.Redaction voor .NET.
  • Kan ik het geredigeerde document opslaan zonder rasterisatie? Ja – gebruik redactor.Save(..., new Options.RasterizationOptions { Enabled = false }).
  • Heb ik een licentie nodig voor productiegebruik? Een volledige licentie is vereist voor productie; een proeflicentie is beschikbaar voor evaluatie.
  • Is deze aanpak compatibel met .NET Core / .NET 6+? Absoluut – dezelfde API werkt zowel op .NET Framework als .NET Core/5/6.

Wat is een custom logger c#?

Een custom logger c# is een klasse die de ILogger interface implementeert die door GroupDocs.Redaction wordt geleverd. Het stelt je in staat logberichten te routeren waar je maar wilt—console, bestand, database of externe monitoringsystemen—terwijl je een duidelijk overzicht krijgt van de redactie‑workflow.

Waarom aangepaste logging .net gebruiken met GroupDocs.Redaction?

  • Compliance & Auditing: Gedetailleerde logs voldoen aan de regelgevingseisen.
  • Error Visibility: LogError en LogWarning geven je directe feedback over problemen.
  • Integration Flexibility: Stuur logs door naar bestaande .NET logging‑frameworks (Serilog, NLog, enz.).

Vereisten

  • GroupDocs.Redaction for .NET geïnstalleerd (zie installatie hieronder).
  • Een .NET ontwikkelomgeving (Visual Studio, VS Code of CLI).
  • Basiskennis van C# en vertrouwdheid met bestandsstreams.

Installatie

.NET CLI

dotnet add package GroupDocs.Redaction

Package Manager

Install-Package GroupDocs.Redaction

NuGet Package Manager UI
Zoek naar “GroupDocs.Redaction” en installeer de nieuwste versie.

Licentie‑acquisitie

  • Free Trial: Test de API met een tijdelijke licentie.
  • Temporary License: Krijg volledige functionaliteit voor een beperkte periode.
  • Purchase: Verkrijg een permanente licentie voor productie‑implementaties.

Stapsgewijze handleiding

Stap 1: Definieer een custom logger‑klasse (log warnings c#)

Maak een klasse die ILogger implementeert. Deze klasse zal fouten, waarschuwingen en informatieve berichten vastleggen.

using System;
using GroupDocs.Redaction;

class CustomLogger : ILogger
{
    public bool HasErrors { get; private set; }

    // Log errors encountered during processing.
    public void LogError(string message)
    {
        Console.WriteLine("Error: " + message);
        HasErrors = true;
    }

    // Log warnings that may not be critical but need attention.
    public void LogWarning(string message)
    {
        Console.WriteLine("Warning: " + message);
    }

    // Log informational messages for tracking normal operations.
    public void LogInfo(string message)
    {
        Console.WriteLine("Info: " + message);
    }
}

Uitleg: De HasErrors‑vlag helpt je te bepalen of je moet doorgaan met verwerken. De drie methoden corresponderen met de drie logniveaus die je in de meeste redactie‑scenario’s nodig hebt.

Stap 2: Bereid bestands‑paden voor en open het bron‑document

string sourceFile = Utils.PrepareOutputDirectory("YOUR_DOCUMENT_DIRECTORY");
string outputFile = Utils.GetOutputFile(sourceFile);

Waarom dit belangrijk is: Het gebruik van hulpprogram‑methoden houdt je code schoon en zorgt ervoor dat de uitvoermap bestaat voordat je probeert het geredigeerde document op te slaan.

Stap 3: Pas redacties toe terwijl je de custom logger gebruikt

using (Stream stream = File.Open(sourceFile, FileMode.Open, FileAccess.ReadWrite))
{
    var logger = new CustomLogger();
    
    using (Redactor redactor = new Redactor(stream, new LoadOptions(), new RedactorSettings(logger)))
    {
        // Apply a redaction to the document.
        redactor.Apply(new DeleteAnnotationRedaction());
        
        if (!logger.HasErrors)
        {
            using (Stream streamOut = File.Open(outputFile, FileMode.OpenOrCreate, FileAccess.ReadWrite))
            {
                // Save changes without rasterizing the output.
                redactor.Save(streamOut, new Options.RasterizationOptions { Enabled = false });
            }
        }
    }
}

Uitleg:

  1. De Redactor wordt geïnstantieerd met RedactorSettings(logger), waardoor je CustomLogger wordt gekoppeld.
  2. Na het toepassen van een redactie controleert de code logger.HasErrors. Als er geen fouten zijn opgetreden, wordt het document opgeslagen—wat de logica van save redacted document demonstreert zonder rasterisatie.

Veelvoorkomende valkuilen & probleemoplossing

  • Missing log output: Controleer of elke Log*‑methode correct is overschreven.
  • File access exceptions: Zorg ervoor dat de applicatie lees‑/schrijfrechten heeft voor zowel bron‑ als uitvoer‑paden.
  • Logger not wired: De RedactorSettings(logger)‑parameter is essentieel; weglaten ervan schakelt aangepaste logging uit.

Praktische toepassingen

  1. Compliance Reporting: Exporteer logvermeldingen naar een CSV of database voor audit‑trails.
  2. Error Tracking: Lokaliseer snel problematische bestanden door LogError‑output te scannen.
  3. Workflow Automation: Activeer downstream‑processen (bijv. een compliance‑officier informeren) wanneer LogWarning wordt aangeroepen.

Prestatie‑overwegingen

  • Dispose streams promptly om geheugen vrij te maken, vooral bij het verwerken van grote batches.
  • Monitor CPU & memory tijdens bulk‑redacties; overweeg documenten parallel te verwerken met zorgvuldige logger‑synchronisatie.
  • Stay updated: Nieuwere versies van GroupDocs.Redaction bevatten vaak prestatie‑optimalisaties en extra logging‑hooks.

Conclusie

Door een custom logger c# te implementeren, krijg je gedetailleerd inzicht in elke stap van de redactie‑pipeline, waardoor het makkelijker wordt om te voldoen aan compliance‑normen en problemen te debuggen. De hier getoonde aanpak werkt naadloos met GroupDocs.Redaction voor .NET en kan worden uitgebreid om te integreren met elk .NET logging‑framework dat je al gebruikt.


Veelgestelde vragen

Q: Wat is het doel van aangepaste logging met GroupDocs.Redaction?
A: Aangepaste logging helpt bij het bijhouden en beheren van redacties voor compliance, fouttracking en workflow‑optimalisatie.

Q: Hoe ga ik om met fouten met behulp van een custom logger?
A: Implementeer LogError in je CustomLogger‑klasse; de HasErrors‑vlag stelt je in staat de verwerking te stoppen indien nodig.

Q: Kan aangepaste logging worden geïntegreerd met andere systemen?
A: Ja, je kunt logberichten doorsturen naar CRM, ERP of gecentraliseerde monitoringsystemen door de logger‑methoden uit te breiden.

Q: Wat zijn veelvoorkomende valkuilen bij het implementeren van aangepaste logging?
A: Onjuiste implementaties van methoden, ontbrekende RedactorSettings(logger), en bestands‑toegangsrechten zijn de meest voorkomende.

Q: Hoe verbetert aangepaste logging document‑redactie‑workflows?
A: Gedetailleerde logs bieden realtime‑zichtbaarheid, vereenvoudigen probleemoplossing en voldoen aan audit‑vereisten.

Bronnen


Laatst bijgewerkt: 2026-03-28
Getest met: GroupDocs.Redaction 23.11 for .NET
Auteur: GroupDocs