Apa yang setara dengan postfix sendmail -bp
?
Apa yang setara dengan postfix sendmail -bp
?
Jawaban:
postqueue -p
qshape aktif
akan menunjukkan kepada Anda jumlah email yang dikirim ke setiap domain dan berapa lama mereka dalam antrian aktif
qshape ditangguhkan
akan menunjukkan hal yang sama tetapi untuk antrian yang ditangguhkan
Inilah yang saya gunakan, diambil dari milis postfix. Saya menghapus nama penulis, kalau-kalau dia tidak mau di sini (Anda bisa melihatnya di sumbernya). Ini hanya menampilkan total.
#!/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");
EDIT: Memperbaiki kesalahan ketik pada saluran 26.
count
fungsi tertentu. Ini akan gagal di Postfix 2.9+ ketika enable_long_queue_ids = yes '. Saya pikir seharusnya tidak terlalu sulit untuk memperbaikinya untuk id antrian panjang.
postqueue -p | tail -n 1
Baris terakhir di postqueue -p
menunjukkan berapa banyak permintaan dan ukuran:
-- 317788 Kbytes in 11860 Requests.
[root @ server ~] # time mailq | grep -c '^ [0-9A-Z]'
10
0m1.333s nyata
pengguna 0m0.003s
sys 0m0.003s
(hasil di atas menunjukkan bahwa ada 10 email antrian)
Jika belum, qshape
Anda dapat menginstalnya melalui perintah yum berikut:
yum groupinstall perl development
yum install postfix-perl-scripts
qshape mencetak domain antrian Postfix dan informasi distribusi usia. Anda dapat membaca lebih lanjut tentang ini di sini:
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
Berikut ini sebuah contoh.
#!/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