Registro de Atividade do SmtpClient
O registro de atividades é utilizado para depuração, bem como para coletar e analisar informações de funcionamento sobre o cliente SMTP.
Ativar Registro de Atividade usando o arquivo appsettings.json
NOTA: Esta opção é preferida para aplicações .NET Core.
O registro em SmtpClient pode ser ativado com os seguintes passos e exemplos de código:
-
Adicione um arquivo de configuração appsettings.json a um projeto C#, se ainda não tiver sido adicionado.
-
Certifique-se de que o arquivo do projeto contém as seguintes linhas na seção ItemGroup.
<Content Include="appsettings.json"> <CopyToOutputDirectory>Always</CopyToOutputDirectory> </Content>
-
Em seguida, adicione o seguinte conteúdo ao arquivo appsettings.json.
{ "SmtpDiagnosticLog": "smtp.log", "SmtpDiagnosticLog_UseDate": true }
As duas propriedades mencionadas acima são:
-
SmtpDiagnosticLog - especifica o caminho relativo ou absoluto para o arquivo de log.
-
SmtpDiagnosticLog_UseDate - especifica se deve adicionar uma representação em string da data atual ao nome do arquivo de log.
Ativar Registro de Atividade no Código do Programa
Você também pode ativar o registro imediatamente no código.
NOTA: mesmo que você já tenha ativado o registro usando arquivos de configuração, esta opção será aplicada.
O registro em SmtpClient pode ser ativado com os seguintes passos e exemplos de código:
- Crie um SmtpClient.
- Defina o caminho para o arquivo de log usando a propriedade LogFileName.
- Defina a propriedade UseDateInLogFileName se for necessário.
using (var client = new SmtpClient("your smtp server"))
{
// Defina o nome de usuário, senha, porta e opções de segurança
client.Username = "your username";
client.Password = "your password";
client.Port = 465;
client.SecurityOptions = SecurityOptions.SSLImplicit;
// Defina o caminho para o arquivo de log usando a propriedade LogFileName.
client.LogFileName = @"C:\Aspose.Email.Smtp.log";
// Defina a propriedade UseDateInLogFileName se for necessário.
client.UseDateInLogFileName = false;
var eml = new MailMessage("from address", "to address", "this is a test subject", "this is a test body");
client.Send(eml);
}
Ativar Registro de Atividade usando o arquivo App.config
A atividade do cliente SMTP pode ser registrada modificando as configSections no arquivo de configuração. O registro de diagnóstico pode ser realizado com os seguintes passos:
- Adicione um sectionGroup chamado “applicationSettings”.
- Adicione uma seção chamada “Aspose.Email.Properties.Settings”.
- Inclua a configuração com o nome SmtpDiagonosticLog onde o nome do arquivo é definido em applicationSettings/Aspose.Email.Properties.Settings.
Aqui está um exemplo de uma aplicação baseada em formulário que usa SmtpClient para enviar um e-mail. Toda essa atividade é registrada modificando o arquivo App.config. Crie uma aplicação de formulário com um único botão. Adicione o seguinte código para o clique do botão:
// For complete examples and data files, please go to https://github.com/aspose-email/Aspose.Email-for-.NET | |
// Build message | |
MailMessage message = new MailMessage(); | |
// Set email address for From and TO | |
message.From = "userFrom@gmail.com"; | |
message.To = "userTo@gmail.com"; | |
// Set Subject and Body | |
message.Subject = "Appointment Request"; | |
message.Body = "Test Body"; | |
// Initialize SmtpClient and Set valid user name and password, Port and SecurityOptions | |
SmtpClient client = new SmtpClient(); | |
client.Host = "smtp.gmail.com"; | |
client.Username = "userFrom"; | |
client.Password = "***********"; | |
client.Port = 587; | |
client.SecurityOptions = SecurityOptions.SSLExplicit; | |
try | |
{ | |
client.Send(message); | |
} | |
catch(Exception ex) | |
{ | |
Console.WriteLine(ex.Message); | |
} |
- Adicione uma referência ao Aspose.Email.
![]() |
---|
- Adicione o arquivo App.Config e modifique-o de tal forma que o conteúdo do arquivo seja o seguinte
For complete examples and data files, please go to https://github.com/aspose-email/Aspose.Email-for-.NET | |
<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="SmtpDiagnosticLog" serializeAs="String"> | |
<value>Aspose.Email.SMTP.log</value> | |
</setting> | |
</Aspose.Email.Properties.Settings> | |
</applicationSettings> | |
</configuration> |
- Para C# .NET use a seguinte opção
![]() |
---|
- Para VB .NET use a seguinte opção
![]() |
![]() |
---|
![]() |
---|
- Execute o código e, em seguida, observe a pasta de depuração. O seguinte arquivo será gerado.
![]() |
---|