logo
Free, unlimited AI code reviews that run on commit
git-lrc git-lrc GitHub Install Now We'd appreciate a star git-lrc - Free, unlimited AI code reviews that run on commit | Product Hunt git-lrc - Free, unlimited AI code reviews that run on commit | Product Hunt

Postfix::Parse::Mailq - parse the output of the postfix mailq command

Author

       Ricardo SIGNES <rjbs@cpan.org>

Contributor

       Johan Carlquist <jocar@su.se>

Methods

read_fileread_handleread_string
         my $entries = Postfix::Parse::Mailq->read_string($string, \%arg);

       This methods read the output of postfix's mailq from a file (by name), a filehandle, or a string,
       respectively.  They return an arrayref of hashrefs, each hashref representing one entry in the queue as
       reported by mailq.

       Valid arguments are:

         spool - a hashref of { queue_id -> spool_name } pairs
                 if given, this will be used to attempt to indicate in which
                 spool messages currently are; it is not entirely reliable (race!)

   parse_block
         my $entry = Mailq->parse_block(\@lines);

       Given all the lines in a single entry's block of lines in mailq output, this returns data about the
       entry.

Name

       Postfix::Parse::Mailq - parse the output of the postfix mailq command

Synopsis

         use Postfix::Parse::Mailq;

         my $mailq_output = `mailq`;
         my $entries = Postfix::Parse::Mailq->read_string($mailq_output);

         my $bytes = 0;
         for my $entry (@$entries) {
           next unless grep { /\@aol.com$/ } @{ $entry->{remaining_rcpts} };
           $bytes += $entry->{size};
         }

         print "$bytes bytes remain to send to AOL destinations\n";

Version

       version 1.005

Warning

       This code is really rough and the interface will change.  Entries will be objects.  There will be some
       more methods.  Still, the basics are likely to keep working, or keep pretty close to what you see here
       now.

See Also