Nastavení protokolování aktivit SMTP klienta v .NET Core

Protokolování aktivit se používá k ladění, stejně jako ke shromažďování a analýze informací o činnosti SMTP klienta.

Povolit záznam aktivit

Použít soubor appsettings.json k povolení protokolování aktivit

POZNÁMKA: Tato možnost je preferována pro aplikace .NET Core.

Přihlašování SmtpClient lze povolit následujícími kroky a ukázkami kódu:

  1. Přidejte konfigurační soubor appsettings.json do projektu C#, pokud ještě nebyl přidán.

  2. Ujistěte se, že soubor projektu obsahuje v sekci ItemGroup následující řádky.

       <Content Include="appsettings.json">
           <CopyToOutputDirectory>Always</CopyToOutputDirectory>
       </Content>
    
  3. Poté přidejte následující obsah do souboru appsettings.json.

       {
         "SmtpDiagnosticLog": "smtp.log",
         "SmtpDiagnosticLog_UseDate": true
       }
    

Výše uvedené dvě vlastnosti jsou:

  • SmtpDiagnosticLog – určuje relativní nebo absolutní cestu k souboru protokolu.

  • SmtpDiagnosticLog_UseDate – určuje, zda přidat řetězcovou reprezentaci aktuálního data do názvu souboru protokolu.

Povolit protokolování aktivit v programovém kódu

Můžete také povolit protokolování okamžitě v kódu.

POZNÁMKA: i když jste již povolili protokolování pomocí konfiguračních souborů, tato možnost bude použita.

Přihlašování SmtpClient lze povolit následujícími kroky a ukázkami kódu:

  1. Vytvořte SmtpClient.
  2. Nastavte cestu k souboru protokolu pomocí LogFileName vlastnost.
  3. Nastavte UseDateInLogFileName vlastnost, pokud je to nutné.
   using (var client = new SmtpClient("your smtp server"))
   {
       // Set username, password, port, and security options
       client.Username = "your username";
       client.Password = "your password";
       client.Port = 465;
       client.SecurityOptions = SecurityOptions.SSLImplicit;
   
       // Set the path to the log file using the LogFileName property.
       client.LogFileName = @"C:\Aspose.Email.Smtp.log";
       
       // Set the UseDateInLogFileName property if it is necessary.
       client.UseDateInLogFileName = false;
   
       var eml = new MailMessage("from address", "to address", "this is a test subject", "this is a test body");
   
       client.Send(eml);
   }

Použít soubor App.config pro povolení protokolování aktivit

Aktivitu SMTP klienta lze zaznamenávat úpravou configSections v konfiguračním souboru. Protokolování diagnostiky lze provést následujícími kroky:

  1. Přidejte skupinu sekcí s názvem "applicationSettings".
  2. Přidejte sekci s názvem "Aspose.Email.Properties.Settings".
  3. Zahrňte nastavení s názvem SmtpDiagonosticLog, kde je název souboru definován v applicationSettings/Aspose.Email.Properties.Settings

Zde je ukázková aplikace založená na formuláři, která používá SmtpClient pro odeslání e‑mailu. Celá tato aktivita je zaznamenána úpravou souboru App.config. Vytvořte formulářovou aplikaci s jedním tlačítkem. Přidejte následující kód pro událost kliknutí tlačítka:

  1. Přidejte referenci na Aspose.Email.
todo:image_alt_text
  1. Přidejte soubor App.Config a upravte jej tak, aby jeho obsah byl následující
  • Pro C# .NET použijte následující možnost
todo:image_alt_text
  • Pro VB .NET použijte následující možnost
todo:image_alt_text   todo:image_alt_text
todo:image_alt_text
  1. Spusťte kód a poté prohlédněte složku debug. Bude vygenerován následující soubor.
todo:image_alt_text