Última actividad 1725943352

queue-size.pl Sin formato
1#!/usr/bin/env perl
2
3# postfix queue/s size
4# author:
5# source: http://tech.groups.yahoo.com/group/postfix-users/message/255133
6# from: https://serverfault.com/questions/58196/how-do-i-check-the-postfix-queue-size
7
8use strict;
9use warnings;
10use Symbol;
11sub count {
12 my ($dir) = @_;
13 my $dh = gensym();
14 my $c = 0;
15 opendir($dh, $dir) or die "$0: opendir: $dir: $!\n";
16 while (my $f = readdir($dh)) {
17 if ($f =~ m{^[A-F0-9]{5,}$}) {
18 ++$c;
19 } elsif ($f =~ m{^[A-F0-9]$}) {
20 $c += count("$dir/$f");
21 }
22 }
23 closedir($dh) or die "closedir: $dir: $!\n";
24 return $c;
25}
26my $qdir = `postconf -h queue_directory`;
27chomp($qdir);
28chdir($qdir) or die "$0: chdir: $qdir: $!\n";
29printf "Incoming: %d\n", count("incoming");
30printf "Active: %d\n", count("active");
31printf "Deferred: %d\n", count("deferred");
32printf "Bounced: %d\n", count("bounce");
33printf "Hold: %d\n", count("hold");
34printf "Corrupt: %d\n", count("corrupt");
35