Логирование активности ImapClient
Логирование активности используется для отладки, а также для сбора и анализа рабочей информации о клиенте IMAP.
Включение логирования активности с использованием файла appsettings.json
ПРИМЕЧАНИЕ: Этот вариант предпочтителен для приложений .NET Core.
Логирование в ImapClient можно включить, выполнив следующие шаги и примеры кода:
-
Добавьте файл конфигурации appsettings.json в проект C#, если он ранее не был добавлен.
-
Убедитесь, что файл проекта содержит следующие строки в секции ItemGroup.
<Content Include="appsettings.json"> <CopyToOutputDirectory>Always</CopyToOutputDirectory> </Content>
-
Затем добавьте следующее содержимое в файл appsettings.json.
{ "ImapDiagnosticLog": "imap.log", "ImapDiagnosticLog_UseDate": true }
Два упомянутых свойства:
-
ImapDiagnosticLog - указывает относительный или абсолютный путь к файлу журнала.
-
ImapDiagnosticLog_UseDate - указывает, нужно ли добавлять строковое представление текущей даты в имя файла журнала.
Включение логирования активности в коде программы
Вы также можете включить логирование сразу в коде.
ПРИМЕЧАНИЕ: даже если вы уже включили логирование с помощью файлов конфигурации, этот вариант будет применен.
Логирование в ImapClient можно включить, выполнив следующие шаги и примеры кода:
- Создайте ImapClient.
- Установите путь к файлу журнала, используя свойство LogFileName.
- Установите свойство UseDateInLogFileName, если это необходимо.
using (var client = new ImapClient("your imap server", 993, "your username", "your password"))
{
// Установите режим безопасности
client.SecurityOptions = SecurityOptions.Auto;
// Установите путь к файлу журнала, используя свойство LogFileName.
client.LogFileName = @"C:\Aspose.Email.IMAP.log";
// Установите свойство UseDateInLogFileName, если это необходимо.
client.UseDateInLogFileName = false;
}
Включение логирования активности с использованием файла App.config
Активность ImapClient может быть зарегистрирована, изменив секции configSections в файле конфигурации. Следующие шаги помогут выполнить диагностику логирования:
- Добавьте sectionGroup с именем “applicationSettings”.
- Добавьте section с именем “Aspose.Email.Properties.Settings”.
- Включите настройку ImapDiagonosticLog, где имя файла определяется в applicationSettings/Aspose.Email.Properties.Settings.
Вот пример формы приложения, которая использует ImapClient для обработки почты. Вся эта активность регистрируется путем изменения файла App.config.
- Создайте приложение на основе формы с одной кнопкой. Добавьте следующий пример кода для обработки нажатия кнопки:
// For complete examples and data files, please go to https://github.com/aspose-email/Aspose.Email-for-.NET | |
ImapClient client = new ImapClient("imap.gmail.com", 993, "user@gmail.com", "password"); | |
// Set security mode | |
client.SecurityOptions = SecurityOptions.Auto; | |
try | |
{ | |
// Get the message info collection | |
ImapMessageInfoCollection list = client.ListMessages(); | |
// Download each message | |
for (int i = 0; i < list.Count; i++) | |
{ | |
// Save the EML file locally | |
client.SaveMessage(list[i].UniqueId, dataDir + list[i].UniqueId + ".eml"); | |
} | |
} | |
catch (Exception ex) | |
{ | |
Console.WriteLine(ex.Message); | |
} |
- Добавьте ссылку на Aspose.Email.
![]() |
---|
- Теперь добавьте файл App.Config и измените его, чтобы содержимое файла было следующим:
<?xml version="1.0" encoding="utf-8" ?> | |
<configuration> | |
<configSections> | |
<sectionGroup name="applicationSettings" type="System.Configuration.ApplicationSettingsGroup, System, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" > | |
<section name="Aspose.Email.Properties.Settings" type="System.Configuration.ClientSettingsSection, System, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" requirePermission="false" /> | |
</sectionGroup> | |
</configSections> | |
<applicationSettings> | |
<Aspose.Email.Properties.Settings> | |
<setting name="ImapDiagnosticLog" serializeAs="String"> | |
<value>..\..\..\Log\Aspose.Email.IMAP.log</value> | |
</setting> | |
<setting name="ImapDiagnosticLog_UseDate" serializeAs="String"> | |
<value>True</value> | |
</setting> | |
</Aspose.Email.Properties.Settings> | |
</applicationSettings> | |
</configuration> |
Для C# .NET используйте следующий вариант
![]() |
|
---|---|
Для VB .NET используйте следующий вариант |
![]() |
![]() |
---|
![]() |
---|
- Запустите код, а затем проверьте папку Журнала. Будет сгенерирован следующий файл.
![]() |
---|