Cola de correo
Revisar la cola, examinar mensajes, reintentar la entrega o eliminar.
Revisar la cola
Muestra los mensajes en espera con número, destino y último error: lo primero que se mira cuando el correo no llega.
Warteschlange
PowerShell (Windows)
Get-Queue (Exchange) Integrado
Get-Queue | Sort-Object MessageCount -Descending |
Format-Table Identity, Status, MessageCount, NextHopDomain, LastError -AutoSize IIS SMTP Pickup Integrado
Get-ChildItem "$env:SystemRoot\System32\inetsrv\mailroot\Queue" | Measure-Object Shell de Unix (bash)
mailq Integrado
mailq | tail -1
mailq | head -30 postqueue / exim Herramienta adicional
postqueue -p | tail -1
exim -bpc Los cmdlets de Exchange requieren el Exchange Management Shell. En Linux el comando depende del MTA: mailq funciona con Postfix y Exim, los comandos de detalle varían.
Examinar un mensaje
Muestra un mensaje en espera con remitente, destinatarios, cabeceras y el motivo del fallo.
- ID del mensaje (cola)
-
3F2A81C0B45Cambiar en el generador →
PowerShell (Windows)
Get-Message (Exchange) Integrado
Get-Message -Identity "3F2A81C0B45" | Format-List Identity, Subject, FromAddress, Recipients, Status, LastError, Queue Get-MessageTrackingLog Herramienta adicional
Get-MessageTrackingLog -MessageId "3F2A81C0B45" -Start (Get-Date).AddDays(-1) | Format-Table Timestamp, EventId, Source, Recipients Shell de Unix (bash)
postcat Integrado
postcat -qv 3F2A81C0B45 exim Herramienta adicional
exim -Mvh 3F2A81C0B45
exim -Mvb 3F2A81C0B45 Forzar la entrega
Inicia de inmediato la entrega de todos los mensajes en espera en lugar de esperar al siguiente reintento.
PowerShell (Windows)
Retry-Queue (Exchange) Integrado
Get-Queue | Where-Object { $_.Status -eq "Retry" } | Retry-Queue -Resubmit $true Force-Resubmit Herramienta adicional
Get-Queue | Where-Object { $_.MessageCount -gt 0 } | ForEach-Object { Retry-Queue -Identity $_.Identity } Shell de Unix (bash)
postqueue Integrado
postqueue -f exim Herramienta adicional
exim -qff Útil justo después de solucionar una caída. Con una cola muy grande provoca un pico de carga en el destino.
Eliminar un mensaje
Quita un mensaje de la cola, opcionalmente sin informe de no entrega.
- ID del mensaje (cola)
-
3F2A81C0B45Cambiar en el generador →
PowerShell (Windows)
Remove-Message (Exchange) Integrado
Remove-Message -Identity "3F2A81C0B45" -WithNDR $false -Confirm:$false Remove-Queue Herramienta adicional
Get-Queue | Where-Object { $_.Status -eq "Suspended" } | Get-Message | Remove-Message -WithNDR $false -Confirm:$false Shell de Unix (bash)
postsuper Integrado
postsuper -d 3F2A81C0B45
# ALLE zurueckgestellten loeschen: postsuper -d ALL deferred exim Herramienta adicional
exim -Mrm 3F2A81C0B45 Irreversible. Examine primero el mensaje y guárdelo si es necesario (postcat, Get-Message).
Encontrar mensajes aplazados
Filtra la cola por texto de error o código de respuesta para encontrar el patrón detrás de una caída.
- Término de búsqueda
-
550Cambiar en el generador →
PowerShell (Windows)
Get-Queue (Exchange) Integrado
Get-Queue | Where-Object { $_.LastError -like "*550*" } |
Format-Table Identity, MessageCount, NextHopDomain, LastError -AutoSize Get-MessageTrackingLog Herramienta adicional
Get-MessageTrackingLog -EventId FAIL -Start (Get-Date).AddHours(-24) | Format-Table Timestamp, RecipientStatus Shell de Unix (bash)
mailq / grep Integrado
mailq | grep -B1 "550" | head -40 postqueue Herramienta adicional
postqueue -j | grep -o '"recipients".*' | head -20