| Server IP : 172.67.201.108 / Your IP : 216.73.216.11 Web Server : Apache/2.4.68 (Amazon Linux) OpenSSL/3.5.5 System : Linux ip-172-31-69-123.ec2.internal 6.1.176-223.369.amzn2023.x86_64 #1 SMP PREEMPT_DYNAMIC Fri Jul 24 13:34:27 UTC 2026 x86_64 User : ec2-user ( 1000) PHP Version : 8.4.23 Disable Function : NONE MySQL : OFF | cURL : ON | WGET : ON | Perl : ON | Python : OFF | Sudo : ON | Pkexec : ON Directory : /ourscripts/ |
Upload File : |
#!/usr/bin/env perl
# pfq - quickly print postfix queue sizes.
# Unlike mailq/postqueue returns immediate answer for a queue under duress.
#
# http://tech.groups.yahoo.com/group/postfix-users/message/255133,
# https://serverfault.com/a/329884/52485,
# SM
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]|[0-9B-Zb-z]){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";
my $incoming = count("incoming");
my $active = count("active");
my $deferred = count("deferred");
my $bounce = count("bounce");
my $hold = count("hold");
my $corrupt = count("corrupt");
printf "Incoming: %7d\n", $incoming;
printf "Active: %7d\n", $active;
printf "Deferred: %7d\n", $deferred;
printf "Bounced: %7d\n", $bounce;
printf "Hold: %7d\n", $hold;
printf "Corrupt: %7d\n", $corrupt;
printf "-----------------\n";
printf "Total: %7d\n", $incoming + $active + $deferred + $bounce + $hold + $corrupt;