Last Update: Tue Oct 24 02:26:24 +0530 2006


Computes and posts weekly stats for Usenet newsgroups, better cached in locally or from an upstream NNTP server.


See for documentation.


    Usage: newsstats [options] <> ...

    Specific options:
        -d, --debug                      Debugging flag (set $DEBUG to true)
        -t, --test-run                   Test run, DON'T POST (depends on $DEBUG)
        -v, --verbose=LEVEL              Verbose level(set $VERBOSE to n)
        -w, --weeks-ago=WEEKS            Weeks ago? defualt is 1 week

    Common options:
        -h, --help                       Show this message
            --version                    Show version information

How to run?

Newsstats is a bit integrated to Leafnode (a Usenet/NNTP proxy for small sites), for better utilization and, or avoid wastage of bandwidth. So download Leafnode source code, and my patch for the same (see links given below). Apply patch, ./configure, ‘make’ and ‘make install’ leafnode. Configure your news-reader-agent to use leafnode proxy as your Usenet/NNTP server and let the leafnode popolate its cache a few days.

Now install newsstats, if you already have not done so! Test run newsstats for newsgroups of your choice, e.g for ‘perl’:

    $ newsstats -t -v1 -w4 comp.lang.perl

View and, or verify the results in your $HOME/.newsstats/comp.lang.perl directory (which newsstats will create automagically for you). Repeat test running newsstats by reducing parameter -w by one till -w2 (newsgroup name e.g. comp.lang.perl for example is required only first time, and may be omitted afterward)

That‘s it! your newsstats installation is ready to report and post weekly news statistics for an example newsgroup i.e. comp.lang.perl here.

Before you set a cron job for newsstats to run automatically, you must download ‘newspost’ source and a patch for the same, apply patch run ‘make’ followed by ‘make install’ for newspost. Set cron job for newsstats to run weekly at some GMT time or better half an hour after your local time zone.

    # crontab -e
    05 6 * * 1  /usr/sbin/newsstats

The above worked fine for me; time zone +05:30, so cron will run at 06:05 for me.

And you have done it! :)


  1. Test running newsstats a few weeks ago is a good idea; it‘ll collect data for regular posters in any of the new newsgroups you add.
  2. Newsgroups can be easily added and, or removed by adding and, or removing directories named after newsgroups names. For example to remove newsgroups ‘comp.lang.perl’ from newsstats‘s reports, just move away directory $HOME/.newsstats/comp.lang.perl and, or unlink it.





  1. Some links on this page go to sites that are completely out of our control. Therefore we dissociate from their content explicitely and will remove the links in case we‘re informed about any illegal activities on that pages as far as the effort to do that is reasonable for us.


Any contribution of yours, although howsoever small it may be, shall highly be appreciated; for further development of this and, or many other F/LOSS (Free/Libre Open Source Software) Projects.


Copyright (C) 2004-2007 by Dr Balwinder Singh Dheeman. Distributed under the GNU GPL ( See the files "COPYING" and, or "Copyright" , supplied with all distributions for additional information.


Balwinder Singh Dheeman <>

 $Id: README,v 1.5 2007/01/24 07:41:50 bsd Exp $