2 usestats - newsgroup statistic generator
\r
5 usestats.pl [-hq] [-c <CONFFILE>] [-r|w <SAVEFILE>]
\r
8 usestats erzeugt Statistiken über Newsgroups, indem vorhandene
\r
9 Postings analysiert und daraus verschiedene Reports erstellt werden.
\r
14 Mit dem Argument -h wird eine kurze Hilfe ausgegeben.
\r
17 Mit dem Argument -q werden alle Statusausgaben auf STDERR
\r
21 Mit dem Argument -c, gefolgt nach Leerzeichen von einem
\r
22 Dateinamen, kann eine Konfigurationsdatei übergeben werden.
\r
24 Beispiel: usestats.pl -c usestats.cfg
\r
27 Mit dem Argument -w, gefolgt nach Leerzeichen von einem
\r
28 Dateinamen, können die Daten der eingelesenen Postings
\r
29 gespeichert werden. Spätere Durchläufe von usestats.pl
\r
30 können dann auf diese gespeicherten Daten zurückgreifen.
\r
32 Beispiel: usestats.pl -w de-admin-misc.txt
\r
35 Mit dem Argument -r, gefolgt nach Leerzeichen von einem
\r
36 Dateinamen, können gespeicherte Daten zuvor eingelesener
\r
37 Postings aus einem früheren Durchlauf von usestats.pl
\r
38 wieder geladen werden.
\r
40 Beispiel: usestats.pl -r de-admin-misc.txt
\r
44 usestats verarbeitet verschiedene Eingabeformate:
\r
48 Die Postings müssen in diesem Fall als Unix-MBOX-Datei vorliegen,
\r
49 also fortlaufen, getrennt jeweils durch eine Zeile der Form "From
\r
50 <user>@<domain> <dow> <mon> <day> <hour>:<minute>:<second>
\r
51 <year>". In dieses Format können etliche Clients die Postings
\r
52 exportieren; abgesehen davon gibt es eine ganze Reihe
\r
53 Konvertierungsprogramme, die MBOX-Dateien ausgeben.
\r
55 Die MBOX-Datei wird einfach in usestats gepiped:
\r
57 usestats.pl < mypostings.txt
\r
58 usestats.pl -cusestats.cfg < mypostings.txt
\r
60 (2) data.dat-Datei (Hamster)
\r
62 Eine in dem Mail-und Newsserver "Hamster" fuer Windows-Systeme
\r
63 vorliegende Newsgroup kann auf dieselbe Weise in usestats
\r
64 gepiped werden. Zu diesem Zweck wird die entsprechende
\r
65 data.dat-Datei, die die Postings enthält, aus dem jeweiligen
\r
66 Spoolverzeichnis (...\Groups\news.grup.pe\data.dat) in
\r
69 usestats.pl -cusestats.cfg < Groups\hamster.de.talk\data.dat
\r
71 Zu diesem Zweck muss das zu parsende Format in einer
\r
72 Konfigurationsdatei auf "hamster" umgestellt werden.
\r
74 (3) Spoolverzeichnis
\r
76 usestats kann auch ein Spoolverzeichnis verarbeiten, in dem jedes
\r
77 Postings als einzelne Datei vorliegt, also bspw. im "traditional
\r
78 spool" von INN. Für diese Art der Verarbeitung muss in der
\r
79 Konfigurationsdatei die Variable "spooldir" gesetzt sein.
\r
81 Beispiel: /var/spool/news/de/test
\r
85 (1) Postings pro Tag
\r
87 Dieser Report gibt aus, wie viele Postings pro Tag angefallen
\r
88 sind, aufsummiert nach Monaten.
\r
90 (2) Newsgroupnutzung
\r
92 Dieser Report gibt an, in wecher Newsgroup im Statistikzeitraum
\r
93 wie viele Postings abgesetzt wurden. Crossposts in mehrere Gruppen
\r
94 zugleich werden in jeder Gruppe als einzelnes Posting gezählt.
\r
96 (3) Poster (unstrukturiert)
\r
98 Dieser Report gibt an, wer im Statistikzeitraum wie viele
\r
99 Postings abgesetzt hat.
\r
101 (4) Poster (strukturiert)
\r
103 Für diesen Report werden alle Poster mit identischem Realnamen
\r
104 zusammengefasst, unabhängig von ggf. wechselnden Mailadressen.
\r
108 Dieser Report fasst zusammen, wie viele Postings zum jeweiligen
\r
109 Subject angefallen sind.
\r
113 Schließlich werden die verwendeten Newsreader statistisch
\r
116 (7) Nutzer pro Newsreader
\r
118 Auch der Nutzeranteil pro Newsreader kann ausgegeben werden.
\r
120 Konfigurationsdatei / Variablen:
\r
122 Die Konfigurationsdatei besteht aus Zuweisungen von Werten zu
\r
123 Parametern in der Form
\r
127 Mit "#" eingeleitete Zeilen sind Kommentare.
\r
129 Es können folgende Parameter gesetzt werden:
\r
132 Das Spoolverzeichnis, falls die Postings von dort gelesen werden
\r
133 sollen. "spooldir" darf nicht gesetzt sein, wenn man eine MBOX in
\r
134 usestats pipen möchte.
\r
139 Dieser Parameter kann den Wert 0 oder 1 annehmen und entscheidet
\r
140 entscheidet darüber, ob das Spoolverzeichnis rekursiv verarbeitet
\r
141 werden soll, d.h. alle darunterliegenden Unterverzeichnisse auch.
\r
142 Ermöglicht die Verarbeitung nicht nur einzelner Newsgroups,
\r
143 sondern auch ganzer Hierarchien oder des kompletten Newsspools des
\r
146 Noch nicht intensiv getestet, Fehler bitte mitteilen!
\r
151 Das Format der Datei, die in usestats gepiped wird.
\r
152 Mögliche Werte sind 'mbox' fuer eine Datei in MBOX-Format oder
\r
153 'hamster' fuer eine .dat-Datei des Hamsters.
\r
158 Der Zeichensatz, in dem die Ausgabe erfolgen soll. In diesen
\r
159 Zeichensatz werden From:- und Subject:-Header für die Ausgabe
\r
160 konvertiert. (Die Ausgaben des Programms selbst umfassen nur
\r
161 7bit-ASCII-Zeichen.)
\r
163 Default: ISO-8859-1
\r
166 Die lokale Zeitzone. Empfohlen wird die Angabe als Abweichung von
\r
167 GMT, also bspw. "+0200".
\r
172 Wenn dieser Parameter angegeben wird, werden nur Postings
\r
173 erfasst, die -auch- in diese Newsgroup gegangen sind.
\r
178 Bei Angabe dieses Parameters werden nur Postings nach diesem
\r
179 Datum erfasst. Die Angabe sollte im ISO-Format erfolgen, also
\r
180 bspw. "2003-10-01" für den 1. Oktober 2003. Die Verwendung von
\r
181 "start"/"stop" verlängert die Programmlaufzeit.
\r
186 Bei Angabe dieses Parameters werden nur Postings vor diesem Datum
\r
187 erfasst. Die Angabe sollte im ISO-Format erfolgen, also bspw.
\r
188 "2003-10-31" für den 31. Oktober 2003. Die Verwendung von
\r
189 "start"/"stop" verlängert die Programmlaufzeit.
\r
194 Dieser Parameter kann den Wert 0 oder 1 annehmen und entscheidet
\r
195 darüber, ob der Report "Postings pro Tag" ausgegeben werden soll.
\r
200 Dieser Parameter kann den Wert 0 oder 1 annehmen und entscheidet
\r
201 darüber, ob der Report "Newsgroupnutzung" ausgegeben werden
\r
207 Dieser Parameter kann den Wert 0 oder 1 annehmen und entscheidet
\r
208 darüber, ob der Report "Poster (strukturiert)" ausgegeben werden
\r
214 Dieser Parameter kann den Wert 0 oder 1 annehmen und entscheidet
\r
215 darüber, ob der Report "Poster (unstrukturiert)" ausgegeben
\r
221 Dieser Parameter kann den Wert 0 oder 1 annehmen und entscheidet
\r
222 darüber, ob der Report "Subjects (strukturiert)" ausgegeben
\r
228 Dieser Parameter kann den Wert 0 oder 1 annehmen und entscheidet
\r
229 darüber, ob der Report "Newsreader (strukturiert)" ausgegeben
\r
235 Dieser Parameter kann den Wert 0 oder 1 annehmen und entscheidet
\r
236 darüber, ob der Report "Nutzer pro Newsreader (strukturiert)"
\r
237 ausgegeben werden soll.
\r
242 Dieser Parameter kann den Wert 'show' oder 'noshow' annehmen und
\r
243 entscheidet darüber, ob unbekannte Newsreader mit dem vollen
\r
244 Eintrag der Headerzeile User-Agent/X-Newsreader/X-Mailer
\r
245 angezeigt oder unter "Sonstige" summiert werden sollen.
\r
250 Dieser Parameter gibt die Spaltenbreite an, die maximal für die
\r
251 Namen der Poster zur Verfügung steht. Analog kann der Wert auch
\r
252 für die anderen Reports - ausser day - gesetzt werden.
\r
253 Der Wert sollte entsprechend der Angabe von poster_graph und der
\r
254 erwünschten maximalen Zeilenlänge gewählt werden.
\r
259 Dieser Parameter gibt die Einrückung der Tabelle an. Analog kann
\r
260 der Wert auch für die anderen Reports - ausser day - gesetzt
\r
266 Dieser Parameter gibt an, wie viele Zeilen die Tabelle haben
\r
267 soll, ob also nur die häufigsten Poster genannt werden sollen. 0
\r
268 gibt die komplette Tabelle aus. Analog kann der Wert auch für die
\r
269 anderen Reports - ausser day - gesetzt werden.
\r
274 Dieser Parameter gibt an, wie viele Postings jemand mindestens
\r
275 erreicht haben muss, um in die Tabelle aufgenommen zu werden. 0
\r
276 gibt die komplette Tabelle aus. Analog kann der Wert auch für die
\r
277 anderen Reports - ausser day - gesetzt werden.
\r
282 Dieser Parameter gibt an, wie breit die "grafische" Darstellung
\r
283 der Prozentzahlen werden darf. 0 schaltet die Balkengrafik aus.
\r
284 Analog kann der Wert auch für die anderen Reports - ausser day -
\r
290 Das Zeichen, das für die Balkengraphik verwendet werden soll.
\r
295 Die folgenden CPAN-Module werden neben Perl 5.6.1 oder höher benötigt:
\r
297 Locale::Recode (und die übrigen Module aus diesem Paket)
\r
303 - Fehler und Fehleingaben werden größtenteils nicht abgefangen.
\r
305 Weitere Bugs nimmt <thh@inter.net> gerne entgegen.
\r
308 - HMTL-Templates als weitere Ausgabemöglichkeit sind angedacht.
\r
311 Thomas Hochstein <thh@inter.net>
\r
317 © 10/2003-10/2004 Thomas Hochstein.
\r
318 See source for license und warranty.
\r