procbatch

Florian Schlichting fschlich at CIS.FU-Berlin.DE
Tue Aug 23 21:45:29 UTC 2011


Hi Julien,

tonight I got around to finishing the procbatch manual page, which
you'll find attached. And if you can be bothered, here's a typo and two
redundant lines that I happened upon while looking for documentation:

--- a/innfeed/procbatch.in
+++ b/innfeed/procbatch.in
@@ -3,12 +3,10 @@

 # Author:       James Brister <brister at vix.com> -- berkeley-unix --
 # Start Date:   Thu May 16 10:32:02 1996 +0200
-# Project:      INN -- innfeed
-# File:         procbatch.pl
 # RCSId:        $Id$
 #
 # Description: Take a file of the form generated by innd in the outgoing
-#             directory ("Wnm*") and separate it into tape files for INN.
+#             directory ("Wnm*") and separate it into tape files for innfeed.
 #
 # Thanks to Clayton O'Neill <coneill at premier.net> for serious speed
 # improvements.


Florian
-------------- next part --------------
=head1 NAME

procbatch - process an INN funnel file or innfeed-dropped file

=head1 SYNOPSIS

B<procbatch> [B<-e> I<peer>] [B<-d> I<outdir>] [B<-c>] [B<-s> I<spooldir>]
[B<-m>] [B<-t> I<backlogdir>] [B<-u>] F<batchfile>

=head1 DESCRIPTION

B<procbatch> will take an INN funnel or innfeed-dropped file and split it
up by host for direct processing with C<innfeed> or C<innxmit>.

While funnel files will normally only be of interest after a crash, innfeed
may drop articles for a variety of reasons, not all of which indicate a
fundamental problem.  For example, innfeed may drop articles when started and
stopped in quick succession while INN processes a large number of control
messages (a temporary indisposition), or when INN feeds it articles for a site
that isn't in innfeed.conf (a misconfiguration).  

Every running innfeed opens a file named F<< innfeed-dropped.<id> >>, which
should normally always be zero length and deleted on exit.  If there are
non-zero length files, innfeed has dropped some articles, and those dropped
article files have to be manually processed or those articles will never be
sent to peers.  To do that, first make sure that the file doesn't correspond
to a currently running innfeed, for example by calling 
C<ctlinnd flush innfeed!>

An INN funnel file, or an innfeed-dropped file, will usually be of the format

        pathname message-id peer1 peer2 peer3 ...

where pathname can alternatively be a storage API token.

B<procbatch> will break this file up into files named peer1.tmp peer2.tmp
peer3.tmp ..., of the format:

        pathname message-id

These tape files will be sorted and stripped of duplicate entries.
Simply renaming them to peer1 peer2 peer3 in a running innfeed's backlog
directory will cause them to be picked up automatically by innfeed
every 10 minutes (the default value of I<backlog-newfile-period> in 
F<innfeed.conf>). Use the B<-m> flag to have B<procbatch> rename and move 
them into place automatically.

After running B<procbatch>, you may want to make sure that every generated
backlog file has a corresponding .lock file.  Otherwise, innfeed doesn't
have that site configured as a peer, meaning your F<innfeed.conf> may need 
fixing.

=head1 OPTIONS

=over 4

=item B<-e> I<peer>

Only process entries for I<peer>.

=item B<-d> I<outdir>

Put the output file(s) into the directory I<outdir> 
(defaults to F<< <spooltemp> >>).
When also specifying B<-m>, the temporary output files
will still be put here before being moved into their final location.

=item B<-c>

Check for the existence of an article before writing references
to it to the tapefiles.
Currently, this option can only be used with a tradspool article store.
Using it with any other spool format will lead to all
articles being dropped.

=item B<-s> I<spooldir>

Use I<spooldir> as the location of the article spool
(defaults to F<< <patharticles> >>).
This option has an effect only on a tradspool system
when also specifying B<-c>.

=item B<-m>

Directly append to tape files in innfeed's backlog directory.

=item B<-t> I<backlogdir>

Use I<backlogdir> as the location of the innfeed backlog directory
(the directory where the created tape file will be put).
Defaults to F<< <pathspool>/innfeed >>.
This option has an effect only when also specifying B<-m>.

=item B<-u>

Unlink the input batchfile after processing.

=item B<-v>

Add verbosity.

=item B<-q>

Quiet mode: only display error messages.

=item B<-h>

Display a short help screen.

=back


=head1 EXAMPLES

Take the file innfeed-dropped.B012345, process its lines appending to
tapefiles in innfeed's backlog directory, and remove it when done.
Be verbose while doing so:

    procbatch -umv innfeed-dropped.B012345

Go through innfeed-dropped.B012345 saving entries for peer1
in /tmp/peer1.tmp, but only if the articles are still available
in the local spool:

    B<procbatch -e peer1 -d /tmp -c innfeed-dropped.B012345>

=head1 BUGS

B<procbatch> should be able to check for the existence of articles
with any kind of article store, possibly using F<grephistory>.

=head1 HISTORY

B<procbatch> was written by James Brister
and improved for speed by Clayton O'Neill.

This manual page was written by Florian Schlichting,
with the help of a memo by Russ Allberry.

$Id$

=head1 SEE ALSO

L<filechan>

=cut

-------------- next part --------------
A non-text attachment was scrubbed...
Name: smime.p7s
Type: application/x-pkcs7-signature
Size: 5557 bytes
Desc: not available
URL: <https://lists.isc.org/pipermail/inn-workers/attachments/20110823/c15fc67e/attachment.bin>


More information about the inn-workers mailing list