¿A qué equivale el postfix sendmail -bp
?
¿A qué equivale el postfix sendmail -bp
?
Respuestas:
postqueue -p
qshape active
le mostrará la cantidad de correos electrónicos que se envían a cada dominio y cuánto tiempo han estado en la cola activa
qshape diferido
le mostrará lo mismo pero para la cola diferida
Esto es lo que uso, seleccionado de la lista de correo postfix. Eliminé el nombre del autor, en caso de que no lo quiera aquí (puede verlo en la fuente). Solo muestra totales.
#!/usr/bin/env perl
# postfix queue/s size
# author:
# source: http://tech.groups.yahoo.com/group/postfix-users/message/255133
use strict;
use warnings;
use Symbol;
sub count {
my ($dir) = @_;
my $dh = gensym();
my $c = 0;
opendir($dh, $dir) or die "$0: opendir: $dir: $!\n";
while (my $f = readdir($dh)) {
if ($f =~ m{^[A-F0-9]{5,}$}) {
++$c;
} elsif ($f =~ m{^[A-F0-9]$}) {
$c += count("$dir/$f");
}
}
closedir($dh) or die "closedir: $dir: $!\n";
return $c;
}
my $qdir = `postconf -h queue_directory`;
chomp($qdir);
chdir($qdir) or die "$0: chdir: $qdir: $!\n";
printf "Incoming: %d\n", count("incoming");
printf "Active: %d\n", count("active");
printf "Deferred: %d\n", count("deferred");
printf "Bounced: %d\n", count("bounce");
printf "Hold: %d\n", count("hold");
printf "Corrupt: %d\n", count("corrupt");
EDITAR: se corrigió un error tipográfico en la línea 26.
count
función. Fallará en Postfix 2.9+ cuando enable_long_queue_ids = yes '. Creo que no debería ser demasiado difícil arreglarlo para identificadores de cola largos.
postqueue -p | tail -n 1
La última línea en el postqueue -p
muestra cuántas solicitudes y tamaño:
-- 317788 Kbytes in 11860 Requests.
[root @ server ~] # time mailq | grep -c '^ [0-9A-Z]'
10
0m1.333s reales
usuario 0m0.003s
sys 0m0.003s
(el resultado anterior indica que hay 10 correos electrónicos en la cola)
Si no lo tiene qshape
, puede instalarlo mediante los siguientes comandos yum:
yum groupinstall perl development
yum install postfix-perl-scripts
qshape imprime la información de distribución de edad y dominio de la cola Postfix. Puedes leer más sobre esto aquí:
http://www.postfix.org/QSHAPE_README.html
% qshape -s hold | head
T 5 10 20 40 80 160 320 640 1280 1280+
TOTAL 486 0 0 1 0 0 2 4 20 40 419
yahoo.com 14 0 0 1 0 0 0 0 1 0 12
extremepricecuts.net 13 0 0 0 0 0 0 0 2 0 11
ms35.hinet.net 12 0 0 0 0 0 0 0 0 1 11
winnersdaily.net 12 0 0 0 0 0 0 0 2 0 10
hotmail.com 11 0 0 0 0 0 0 0 0 1 10
worldnet.fr 6 0 0 0 0 0 0 0 0 0 6
ms41.hinet.net 6 0 0 0 0 0 0 0 0 0 6
osn.de 5 0 0 0 0 0 1 0 0 0 4
Aquí hay un ejemplo.
#!/bin/bash
for q in active bounce corrupt defer deferred flush hold incoming maildrop pid private public saved trace
do
count=$(find /var/spool/postfix/$q ! -type d -print | wc -l)
echo $q $count
done