File: //lib/check_mk_agent/need_sudo/postfix-queue
#!/usr/bin/python
from __future__ import generators
import os
import sys
from glob import glob as ls
total = 0
queue = {}
aicm = ['active','incoming','maildrop','deferred']
def dirwalk(dir):
"walk a directory tree, using a generator"
for f in os.listdir(dir):
fullpath = os.path.join(dir,f)
if os.path.isdir(fullpath) and not os.path.islink(fullpath):
for x in dirwalk(fullpath): # recurse into subdir
yield x
else:
yield fullpath
if __name__ == '__main__':
print "<<<queue_postfix>>>"
for postfix in ls('/var/spool/postfix*'):
name = str(postfix.split('/')[-1:])
mails = 0
for directory in aicm:
mails = mails + len([ msgid for msgid in dirwalk("%s/%s" % (postfix, directory))])
queue[name] = mails
total = queue[name] + total
print postfix.split('/')[-1], queue[name]