Como Usar o Event Viewer para Diagnosticar Ligações do Outlook — Guia Passo a Passo
Windows Event Viewer · Outlook · Exchange · Diagnóstico de Rede · PowerShell
Quando o Outlook se comporta de forma inesperada — pop-ups de password, erros de ligação, lentidão ou mensagens de certificado — a primeira questão é: para onde é que o Outlook está realmente a tentar ligar-se? O Visualizador de Eventos do Windows (Event Viewer), combinado com os logs internos do Outlook e ferramentas de rede, responde exactamente a isso.
Este guia mostra como activar o logging do Outlook, filtrar os eventos certos no Event Viewer, ler os logs ETL gerados, e confirmar em tempo real as ligações activas com PowerShell e ferramentas de rede — tudo sem instalar software adicional.
Neste artigo
- O que o Event Viewer regista sobre o Outlook
- Activar o logging detalhado do Outlook
- Abrir e navegar no Event Viewer
- IDs de eventos relevantes para ligações Outlook
- Criar filtros personalizados no Event Viewer
- Consultar eventos com PowerShell
- Ler os logs ETL do Outlook
- Ver ligações activas em tempo real — netstat e TCPView
- Testar o Autodiscover directamente no Outlook
- Cenários comuns e o que procurar
1. O que o Event Viewer Regista sobre o Outlook
O Event Viewer do Windows agrega eventos de múltiplas fontes que juntos contam a história de uma ligação Outlook — autenticação, rede, certificados e erros da aplicação. Não existe um único log com “o servidor a que o Outlook se ligou”, mas a combinação de três fontes dá essa resposta completa:
| Fonte de log | Localização no Event Viewer | O que revela |
|---|---|---|
| Application Log | Registos do Windows → Aplicação | Erros e avisos do Outlook, falhas de perfil, problemas com o OST |
| Security Log | Registos do Windows → Segurança | Tentativas de autenticação (sucesso e falha), Kerberos, NTLM — conta e servidor alvo |
| System Log | Registos do Windows → Sistema | Erros de rede, problemas com o canal seguro do domínio, hora do sistema |
| Microsoft-Windows-CAPI2 | Registos de Aplicações e Serviços → Microsoft → Windows → CAPI2 | Validação de certificados SSL — qual o certificado e de que servidor |
| Outlook ETL logs | %TEMP%\Outlook Logging\ (ficheiros .etl) | Detalhe completo das ligações Outlook — servidor, protocolo, Autodiscover, URLs tentados |
2. Activar o Logging Detalhado do Outlook
Por defeito, o Outlook não regista informação detalhada de ligações. É necessário activar o logging antes de reproduzir o problema.
Via interface gráfica do Outlook
- Ficheiro → Opções → Avançadas
- Descer até à secção Outros
- Marcar a opção “Activar registo de resolução de problemas (requer reinício do Outlook)”
- Clicar em OK e reiniciar o Outlook
- Reproduzir o problema (tentar ligar, abrir o email, aguardar o pop-up)
- Os logs são gerados em
%TEMP%\Outlook Logging\
Via registo do Windows (para activação remota ou em massa)
# Set-ItemProperty falha se a chave não existir — usar New-Item -Force para criar se necessário
$regPath = “HKCU:\Software\Microsoft\Office\16.0\Outlook\Options\Mail”
# Criar a chave de registo se não existir (não faz nada se já existir)
if (-not (Test-Path $regPath)) {
New-Item -Path $regPath -Force | Out-Null
}
# Activar logging (EnableLogging = 1)
Set-ItemProperty -Path $regPath -Name “EnableLogging” -Value 1 -Type DWord
# Confirmar que ficou activo (deve mostrar EnableLogging : 1)
Get-ItemProperty -Path $regPath -Name EnableLogging -ErrorAction SilentlyContinue |
Select-Object EnableLogging
# Desactivar após diagnóstico (os logs crescem rapidamente)
Set-ItemProperty -Path $regPath -Name “EnableLogging” -Value 0 -Type DWord
Write-Host “Logging do Outlook desactivado.”
⚠ Desactivar após diagnóstico: Os ficheiros ETL do Outlook crescem rapidamente em utilização normal. Desactivar o logging assim que o problema estiver reproduzido e os logs recolhidos.
3. Abrir e Navegar no Event Viewer
Como abrir o Event Viewer
eventvwr.msc
# Método 2 — PowerShell (abre a interface gráfica)
Start-Process eventvwr.msc
# Método 3 — Menu Iniciar → pesquisar “Visualizador de Eventos”
Estrutura de navegação relevante para o Outlook
| Caminho no Event Viewer | Relevância para diagnóstico Outlook |
|---|---|
| Registos do Windows → Aplicação | Erros e avisos gerados pelo processo Outlook.exe — primeiro local a verificar |
| Registos do Windows → Segurança | Autenticações — ver conta usada, servidor alvo, sucesso/falha, protocolo (Kerberos/NTLM) |
| Registos do Windows → Sistema | Erros de rede (Netlogon, DNS, canal seguro domínio) |
| Reg. Aplic. e Serviços → Microsoft → Windows → CAPI2 → Operational | Validação de certificados SSL — nome do servidor no certificado, erros de confiança |
| Reg. Aplic. e Serviços → Microsoft → Windows → DNS-Client → Operational | Resoluções DNS feitas pelo Outlook — que nomes tentou resolver (autodiscover, servidor Exchange) |
ℹ Activar logs operacionais desactivados por defeito
Os logs CAPI2/Operational e DNS-Client/Operational estão desactivados por defeito. Para activar: no Event Viewer, clique com o botão direito sobre o log → Activar Registo. Só passarão a registar eventos a partir desse momento.
4. IDs de Eventos Relevantes para Ligações do Outlook
| Event ID | Log | O que significa | Relevância Outlook |
|---|---|---|---|
| 4624 | Segurança | Logon com sucesso — tipo de autenticação, conta usada, servidor alvo | Confirma que a autenticação Outlook ao Exchange funcionou e com que conta |
| 4625 | Segurança | Logon falhado — conta, servidor alvo, razão da falha (password errada, conta bloqueada) | Principal evento para diagnosticar pop-ups de password recorrentes |
| 4771 | Segurança | Falha de pré-autenticação Kerberos — conta e servidor KDC | Kerberos a falhar → Outlook cai para NTLM ou repete autenticação |
| 4776 | Segurança | Validação de credenciais NTLM — conta e estação de trabalho | Outlook a usar NTLM em vez de Kerberos — pode revelar problema de SPN ou domínio |
| 8003 | Sistema (Netlogon) | Controlador de domínio não encontrado ou canal seguro com falha | PC sem ligação ao DC → autenticação Kerberos impossível → pop-up Outlook |
| 8004 | Sistema (Netlogon) | Falha de autenticação no DC — conta ou password inválida no domínio | Confirma que o problema é de credenciais, não de rede |
| CAPI2 | CAPI2/Operational | Verificação de cadeia de certificados — nome do servidor no certificado, CA, resultado | Revela exactamente o FQDN do servidor Exchange no certificado SSL |
| DNS 1014 | Sistema | Resolução DNS falhada para um nome específico | Revela que nome DNS o Outlook tentou resolver — ex: autodiscover.empresa.pt |
5. Criar Filtros Personalizados no Event Viewer
Os logs do Windows contêm milhares de eventos. Filtrar por ID, source e intervalo de tempo é essencial para encontrar rapidamente o que é relevante.
Filtrar via interface gráfica
- No Event Viewer, seleccionar o log pretendido (ex: Segurança)
- No painel direito, clicar em Filtrar Registo Actual…
- No campo IDs de Eventos, introduzir os IDs separados por vírgula:
4624, 4625, 4771, 4776 - Em Hora Registada, seleccionar o intervalo de tempo do problema
- Clicar em OK
Criar uma Vista Personalizada guardada
- No painel esquerdo: Vistas Personalizadas → Criar Vista Personalizada…
- Seleccionar Por registo → marcar Segurança e Sistema
- Em IDs de Eventos:
4624, 4625, 4771, 4776, 8003, 8004, 1014 - Dar um nome à vista (ex: Diagnóstico Outlook Auth) e guardar
- A vista fica disponível permanentemente no painel esquerdo para uso futuro
6. Consultar Eventos com PowerShell
O PowerShell permite filtrar, exportar e analisar eventos de forma muito mais eficiente do que a interface gráfica — especialmente para cruzar informação de múltiplos logs.
Get-WinEvent -FilterHashtable @{
LogName = ‘Security’
Id = 4625
StartTime = (Get-Date).AddHours(-2)
} | Select-Object TimeCreated,
@{N=‘Conta’;E={$_.Properties[5].Value}},
@{N=‘Dominio’;E={$_.Properties[6].Value}},
@{N=‘Servidor_Alvo’;E={$_.Properties[13].Value}},
@{N=‘Razao_Falha’;E={$_.Properties[8].Value}} |
Format-Table -AutoSize
Get-WinEvent -FilterHashtable @{LogName=‘Security’; Id=4771; StartTime=(Get-Date).AddHours(-2)} |
Select-Object TimeCreated,
@{N=‘Conta’;E={$_.Properties[0].Value}},
@{N=‘Codigo_Falha’;E={$_.Properties[4].Value}},
@{N=‘IP_Cliente’;E={$_.Properties[6].Value}} |
Format-Table -AutoSize
Get-WinEvent -FilterHashtable @{
LogName = ‘Application’
StartTime = (Get-Date).AddHours(-4)
Level = 2 # 2=Error, 3=Warning
} | Where-Object {$_.ProviderName -like “*Outlook*” -or $_.ProviderName -like “*Office*”} |
Select-Object TimeCreated, Id, ProviderName, Message |
Format-List
Get-WinEvent -FilterHashtable @{LogName=‘System’; Id=@(8003,8004); StartTime=(Get-Date).AddDays(-1)} |
Select-Object TimeCreated, Id, Message | Format-List
Get-WinEvent -FilterHashtable @{
LogName = ‘Microsoft-Windows-DNS-Client/Operational’
StartTime = (Get-Date).AddHours(-1)
} | Where-Object {$_.Message -match “autodiscover|exchange|outlook|mail”} |
Select-Object TimeCreated, Message | Format-List
Get-WinEvent -FilterHashtable @{
LogName = ‘Security’
Id = @(4624, 4625, 4771, 4776)
StartTime = (Get-Date).AddHours(-4)
} | Select-Object TimeCreated, Id, Message |
Export-Csv -Path “$env:USERPROFILE\Desktop\outlook_auth_events.csv” -NoTypeInformation -Encoding UTF8
Write-Host “Exportado para o Desktop”
7. Os Ficheiros ETL do Outlook — Limitações e o que Fazer com Eles
O Outlook gera ficheiros .etl automaticamente em %TEMP%\Outlook Logging\. É importante conhecer as limitações reais destes ficheiros antes de tentar analisá-los.
ℹ Como Usar o Outlook ETL Analyzer
A kbase.pt disponibiliza uma ferramenta para analisar os ficheiros .etl gerados pelo Outlook Classico. Consultar Outlook ETL Analyzer: Como Diagnosticar Ligações e Erros do Outlook com Ficheiros ETL.
⚠ Os ETL do Outlook não são legíveis por utilizadores — confirmado pela Microsoft
Estes ficheiros são traces ETW em formato binário proprietário do Office, intencionalmente não decodificáveis por ferramentas standard. Todos os métodos comuns falham:
tracerpt→ “The parameter is incorrect”Get-WinEvent -Path→ “The file cannot be safely opened because it is not supported by this version of Windows”- Event Viewer (Abrir Registo Guardado) → importa o ficheiro mas todos os eventos aparecem com conteúdo em branco
O único método suportado pela Microsoft é submeter um ticket ao suporte Microsoft com os ficheiros ETL em anexo — um engenheiro de suporte tem as ferramentas internas para os converter e analisar.
Localizar e comprimir os ETL para envio ao suporte
explorer “$env:TEMP\Outlook Logging”
# Listar ficheiros ETL com tamanho — para identificar os do período do problema
Get-ChildItem “$env:TEMP\Outlook Logging” -Filter “*.etl” |
Sort-Object LastWriteTime -Descending |
Select-Object Name, @{N=‘MB’;E={[math]::Round($_.Length/1MB,1)}}, LastWriteTime |
Format-Table -AutoSize
# Comprimir todos os ETL para enviar ao suporte Microsoft
$data = Get-Date -Format “yyyyMMdd”
Compress-Archive -Path “$env:TEMP\Outlook Logging\*.etl” `
-DestinationPath “$env:USERPROFILE\Desktop\OutlookETL_$data.zip”
Write-Host “ETL comprimidos em: $env:USERPROFILE\Desktop\OutlookETL_$data.zip”
Alternativa — Microsoft Support and Recovery Assistant (SaRA)
Para diagnóstico de problemas de ligação do Outlook sem precisar de interpretar ETL manualmente, a Microsoft disponibiliza o SaRA — analisa automaticamente a configuração e os logs, e apresenta os resultados em linguagem clara:
- Descarregar o SaRA em aka.ms/SaRA-OutlookSetupProfile
- Executar e seleccionar Outlook → Outlook não liga ao Exchange
- O SaRA recolhe automaticamente os logs relevantes, analisa a configuração e apresenta diagnóstico com passos de resolução
- Se o problema não for resolvido, o SaRA prepara o pacote de logs para submissão ao suporte Microsoft
ℹ Para diagnóstico de ligações do Outlook — as secções 4 a 9 deste artigo são as ferramentas práticas
O Event Viewer (Security, System, CAPI2), o PowerShell com Get-WinEvent, o Get-NetTCPConnection e o teste de Autodiscover integrado no Outlook são os métodos que efectivamente funcionam para diagnosticar ligações. Os ficheiros ETL ficam reservados para escalada ao suporte Microsoft quando os restantes métodos não chegam.
8. Ver Ligações Activas em Tempo Real — netstat e TCPView
Para ver em tempo real exactamente para que endereço IP e porta o Outlook está ligado, o método mais directo é o netstat ou o TCPView da Sysinternals — sem necessidade de logs.
Via netstat (incluído no Windows)
# Executar no PowerShell como Administrador
# Passo 1: Obter o PID do processo Outlook
Get-Process -Name “OUTLOOK” | Select-Object Id, Name, CPU
# Passo 2: Ver ligações TCP activas desse PID
netstat -ano | Select-String “ESTABLISHED” |
Where-Object {$_ -match “<PID_DO_OUTLOOK>”}
# Versão combinada — filtrar automaticamente pelo PID do Outlook
$pid_outlook = (Get-Process -Name “OUTLOOK” -ErrorAction SilentlyContinue).Id
netstat -ano | Select-String $pid_outlook
$pid_outlook = (Get-Process -Name “OUTLOOK”).Id
Get-NetTCPConnection -OwningProcess $pid_outlook -State Established |
Select-Object LocalAddress, LocalPort, RemoteAddress, RemotePort,
@{N=‘RemoteHost’;E={
try {[System.Net.Dns]::GetHostEntry($_.RemoteAddress).HostName}
catch {“(sem DNS reverso)”}
}} |
Format-Table -AutoSize
ℹ Portas típicas do Outlook — o que esperar ver
| Porta | Protocolo | Indica |
|---|---|---|
| 443 | HTTPS / MAPI over HTTPS | Exchange on-premises moderno, Exchange Online (Office 365) |
| 135 | RPC Endpoint Mapper | Exchange on-premises antigo (RPC/TCP) — ligação interna na LAN |
| 993 | IMAPS | Conta IMAP configurada (não Exchange) |
| 587 / 465 | SMTP com TLS | Envio SMTP (conta não Exchange) |
TCPView — alternativa gráfica (Sysinternals)
O TCPView (gratuito, da Microsoft Sysinternals) mostra em tempo real todas as ligações TCP ordenadas por processo — muito mais rápido visualmente. Descarregar em learn.microsoft.com/sysinternals/downloads/tcpview. Após abrir, filtrar por OUTLOOK.EXE na coluna Process para ver imediatamente todos os destinos activos.
9. Testar o Autodiscover Directamente no Outlook
O Outlook tem uma ferramenta de diagnóstico integrada que mostra exactamente que servidor encontrou via Autodiscover — sem necessidade de analisar logs. Esta é frequentemente a forma mais rápida de confirmar o destino da ligação.
- Com o Outlook aberto, manter premida a tecla Ctrl e clicar com o botão direito no ícone do Outlook no tabuleiro do sistema (junto ao relógio)
- Seleccionar “Testar Configuração Automática de E-mail…”
- Introduzir o endereço de email e clicar em Testar
- O separador Resultados mostra o servidor Exchange encontrado, o URL usado e o protocolo
- O separador Registo mostra todos os URLs de Autodiscover tentados e os respectivos resultados (sucesso, erro, redirecionamento)
✓ O que procurar nos resultados do teste Autodiscover
- ExternalEwsUrl / InternalEwsUrl — URL do Exchange Web Services — confirma o servidor Exchange
- CertPrincipalName — nome no certificado SSL — deve corresponder ao servidor Exchange
- AutoDiscoverSMTPAddress — endereço SMTP detectado — deve corresponder à conta configurada
- Erros “The operation timed out” ou “401 Unauthorized” revelam o servidor ao qual está a tentar chegar
10. Cenários Comuns e o que Procurar
| Sintoma | Onde verificar | O que procurar |
|---|---|---|
| Pop-up de password recorrente | Security Log → Event ID 4625 | Conta usada na tentativa de logon — se for diferente da conta correcta, é problema de credenciais em cache |
| Outlook a ligar-se ao servidor errado | Teste Autodiscover + CAPI2 log | URL retornado pelo Autodiscover; nome no certificado SSL — revela para onde o Autodiscover apontou |
| Aviso de certificado | CAPI2/Operational log | Nome do servidor no certificado (CN/SAN) — se não corresponder ao servidor Exchange esperado, o Outlook está a tentar outro destino |
| Outlook desligado — “A tentar ligar” | System Log (8003/8004) + netstat | Erros Netlogon (sem DC) ou ligações TCP em estado SYN_SENT para o IP do Exchange (timeout de rede) |
| Outlook lento a arrancar | ETL log + Teste Autodiscover | No log Autodiscover: múltiplos URLs tentados com timeout antes de chegar ao correcto — indica Autodiscover mal configurado ou DNS lento |
| Suspeita de ligação a servidor externo inesperado | Get-NetTCPConnection + nslookup | IP de destino nas ligações activas → resolver com nslookup → confirmar se pertence ao Exchange esperado ou a outro serviço |
$ip = “52.96.x.x” # substituir pelo IP visto no Get-NetTCPConnection
# Resolução DNS reversa
[System.Net.Dns]::GetHostEntry($ip).HostName
# Informação WHOIS básica via nslookup
nslookup $ip
# Contexto: IPs comuns do Exchange Online (Microsoft) começam por:
# 52.96.x.x, 52.97.x.x, 40.99.x.x, 104.47.x.x
# Para confirmar: https://learn.microsoft.com/microsoft-365/enterprise/urls-and-ip-address-ranges
Artigos relacionados no kbase.pt
- Como Resolver o Pop-up de Password no Outlook com Hosted Exchange (MAPI)
- Diagnóstico de Anomalias em Hosted Exchange — Guia para Helpdesk
- Como Diagnosticar Problemas no Exchange Online — Guia para Helpdesk
- Active Directory: Como Diagnosticar e Resolver Problemas Comuns
- DNS: Guia Completo para Sysadmins — Registos, Zonas e Diagnóstico
