Настроить журналирование активности SMTP-клиента в .NET Core
Журналирование активности используется для отладки, а также для сбора и анализа рабочей информации о SMTP‑клиенте.
Включить журналирование активности
Использовать файл appsettings.json для включения журналирования активности
ПРИМЕЧАНИЕ: Этот параметр предпочтителен для приложений .NET Core.
Ведение журнала SmtpClient можно включить с помощью следующих шагов и примеров кода:
-
Добавьте файл конфигурации appsettings.json в проект C#, если он ещё не был добавлен.
-
Убедитесь, что файл проекта содержит следующие строки в разделе ItemGroup.
<Content Include="appsettings.json"> <CopyToOutputDirectory>Always</CopyToOutputDirectory> </Content> -
Затем добавьте следующее содержимое в файл appsettings.json.
{ "SmtpDiagnosticLog": "smtp.log", "SmtpDiagnosticLog_UseDate": true }
Указанные выше два свойства:
-
SmtpDiagnosticLog — указывает относительный или абсолютный путь к файлу журнала.
-
SmtpDiagnosticLog_UseDate — указывает, добавлять ли строковое представление текущей даты к имени файла журнала.
Включить журналирование активности в программном коде
Вы также можете включить журналирование непосредственно в коде.
ПРИМЕЧАНИЕ: даже если вы уже включили журналирование с помощью файлов конфигурации, этот параметр будет применён.
Ведение журнала SmtpClient можно включить с помощью следующих шагов и примеров кода:
- Создайте SmtpClient.
- Установите путь к файлу журнала, используя LogFileName свойство.
- Установите UseDateInLogFileName свойство, если это необходимо.
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);
}
Использовать файл App.config для включения журналирования активности
Активность SMTP-клиента можно журналировать, изменив configSections в конфигурационном файле. Журналирование диагностики можно выполнить следующими шагами:
- Добавьте группу разделов под названием "applicationSettings".
- Добавьте раздел под названием "Aspose.Email.Properties.Settings".
- Включите настройку с именем SmtpDiagonosticLog, где имя файла определено в applicationSettings/Aspose.Email.Properties.Settings
Ниже представлен пример приложения на форме, которое использует SmtpClient для отправки письма. Вся эта активность фиксируется путем изменения файла App.config. Создайте приложение формы с одной кнопкой. Добавьте следующий код для обработчика клика кнопки:
- Добавьте ссылку на Aspose.Email.
![]() |
|---|
- Добавьте файл App.Config и измените его так, чтобы содержимое выглядело следующим образом
- Для C# .NET используйте следующую опцию
![]() |
|---|
- Для VB .NET используйте следующую опцию
![]() |
![]() |
|---|
![]() |
|---|
- Запустите код и проверьте папку debug. Будет создан следующий файл.
![]() |
|---|




