🚀 go-pugleaf

RetroBBS NetNews Server

Inspired by RockSolid Light RIP Retro Guy

Thread View: de.comm.software.newsserver
9 messages
9 total messages Started by Sebastian Suchan Wed, 04 Jan 2017 19:30
Eigenen Channel schreiben fuer INN2?
#27389
Author: Sebastian Suchan
Date: Wed, 04 Jan 2017 19:30
62 lines
1783 bytes
Hallo NG!

Vor einiger Zeit hatte ich hierzugroup nach Monitoring-Lösungen
für INN gefragt[1]. Da ich damals nicht fündig geworden bin,
wollte ich nun eben selbst versuchen, mir etwas passendes zu
schreiben. Mein Plan dazu ist/war, ein Programm zu schreiben,
das sich als Channel bzw. Newsfeed in INN2 einklinkt und alle
für mich interessanten Daten zu durchlaufenden Postings
mitloggt.

Um überhaupt erstmal einen Anfang zu finden, habe ich mir
zunächst ein Perl-"Miniprogramm" geschrieben, das nichts weiter
tut als alles, was per STDIN vorgworfen bekommt, an eine
bestehende Datei anhängt.

,------------------
| #!/usr/bin/perl
|
| use strict;
| use warnings;
| use POSIX qw(strftime);
|
| my $filename = '/tmp/perltest.txt';
| my $current_time;
|
| open(my $fh, '>>', $filename) or die "Could not open file
|                                       '$filename'";
|
| while(my $line = <>) {
|   $current_time = strftime("%F %T", localtime);
|   print $fh "$current_time $line";
| }
|
| close $fh;
'------------------


In der /etc/news/newsfeeds habe ich das wie folgt eingetragen:

| [...]
| sist!:*:Tc,Wm\
|   :/usr/local/bin/test.pl
| [...]

Das Problem dabei: Die Msg-IDs werden zwar den Newsfeed
übergeben (zu sehen in /var/log/news/news), werden aber nicht
bzw. nicht zeitnah vom Perl-Programm verarbeitet. Erst wenn ich
INN beende, werden die Daten geschrieben.
Eine Änderung des Newsfeed-Typs von "Tc" nach "Tp" hat dazu
geführt, dass laut /var/log/news/news die Daten immer noch aber
den Newsfeed weitergereicht werden, das Perl-Programm aber gar
nichts mehr schreibt.

Wie kann ich also INN bzw. mein eigenes Programm dazu bringen,
die einlaufenden Daten auch wirklich zeitnah zu verarbeiten?


TIA,

Sebastian

_____
[1] <nrluos.6hc.1@msgid.suchanek.de>
Re: Eigenen Channel schreiben fuer INN2?
#27391
Author: Dennis Preiser
Date: Wed, 04 Jan 2017 19:52
13 lines
576 bytes
Sebastian Suchanek <sebastian.suchanek@gmx.de> wrote:
> Das Problem dabei: Die Msg-IDs werden zwar den Newsfeed
> übergeben (zu sehen in /var/log/news/news), werden aber nicht
> bzw. nicht zeitnah vom Perl-Programm verarbeitet. Erst wenn ich
> INN beende, werden die Daten geschrieben.

> Wie kann ich also INN bzw. mein eigenes Programm dazu bringen,
> die einlaufenden Daten auch wirklich zeitnah zu verarbeiten?

Evtl. hilft schon etwas von hier:

	<http://perldoc.perl.org/perlfaq5.html#How-do-I-flush%2funbuffer-an-output-filehandle%3f-Why-must-I-do-this%3f>

Dennis
Re: Eigenen Channel schreiben fuer INN2?
#27390
Author: Sven Hartge
Date: Wed, 04 Jan 2017 20:46
24 lines
663 bytes
Sebastian Suchanek <sebastian.suchanek@gmx.de> wrote:


> In der /etc/news/newsfeeds habe ich das wie folgt eingetragen:

> | [...]
> | sist!:*:Tc,Wm\
> |   :/usr/local/bin/test.pl
> | [...]


Ich habe bei mir diverse Channel so definiert:

can!:*:Tc,Ap,WnstH:/usr/lib/news/cancelwatch/cancelwatch
ninp!:*:Tc,WP:/usr/lib/news/bin/ginpaths2
arc!:!*,de.alt.netdigest,de.admin.news.announce:Tc,Wn:/usr/lib/news/bin/archive -f -i /var/spool/news/archive/INDEX
autoresponder!:!*,*.test:Tp:/usr/lib/news/autoresponder/autoresponder %s

Wie man sieht, ist nur der Autoresponder vom Typ "P"rogramm, der Rest
ist alles "C"hannel.

S°

--
Sigmentation fault. Core dumped.
Re: Eigenen Channel schreiben fuer INN2?
#27392
Author: Sebastian Suchan
Date: Sat, 07 Jan 2017 20:36
23 lines
695 bytes
Thus spoke Dennis Preiser:
> Sebastian Suchanek <sebastian.suchanek@gmx.de> wrote:
>>
>> Das Problem dabei: Die Msg-IDs werden zwar den Newsfeed
>> übergeben (zu sehen in /var/log/news/news), werden aber
>> nicht bzw. nicht zeitnah vom Perl-Programm verarbeitet.
>> Erst wenn ich INN beende, werden die Daten geschrieben.
>
>> Wie kann ich also INN bzw. mein eigenes Programm dazu
>> bringen, die einlaufenden Daten auch wirklich zeitnah zu
>> verarbeiten?
>
> Evtl. hilft schon etwas von hier:
> [...]

Danke, das scheint in der Tat geholfen zu haben.

Jetzt geht's erstmal ans Weiterbasteln. Sobald ich 'was halbwegs
Vorzeigbares fertig habe, melde ich mich wieder. :-)


Tschüs,

Sebastian
Re: Eigenen Channel schreiben fuer INN2?
#27393
Author: Holger Marzen
Date: Sun, 08 Jan 2017 09:07
25 lines
1032 bytes
* On Sat, 07 Jan 2017 20:36:27 +0100, Sebastian Suchanek wrote:

> Thus spoke Dennis Preiser:
>> Sebastian Suchanek <sebastian.suchanek@gmx.de> wrote:
>>>
>>> Das Problem dabei: Die Msg-IDs werden zwar den Newsfeed
>>> übergeben (zu sehen in /var/log/news/news), werden aber
>>> nicht bzw. nicht zeitnah vom Perl-Programm verarbeitet.
>>> Erst wenn ich INN beende, werden die Daten geschrieben.
>>
>>> Wie kann ich also INN bzw. mein eigenes Programm dazu
>>> bringen, die einlaufenden Daten auch wirklich zeitnah zu
>>> verarbeiten?
>>
>> Evtl. hilft schon etwas von hier:
>> [...]
>
> Danke, das scheint in der Tat geholfen zu haben.
>
> Jetzt geht's erstmal ans Weiterbasteln. Sobald ich 'was halbwegs
> Vorzeigbares fertig habe, melde ich mich wieder. :-)

Was definitiv funktioniert, ist cancelwatch, ein Perl-Script das bei
Cancels und Supersedes Mails verschickt. Ich weiß nicht mehr, von wem
ich das hab, vermutlich von Sven Hartge. Bei Interesse kannst Du mir
mailen, ich schicke Dir das relativ kleine Script dann zu.
Re: Eigenen Channel schreiben fuer INN2?
#27394
Author: Holger Marzen
Date: Sun, 08 Jan 2017 09:13
25 lines
1033 bytes
* On Sat, 07 Jan 2017 20:36:27 +0100, Sebastian Suchanek wrote:

> Thus spoke Dennis Preiser:
>> Sebastian Suchanek <sebastian.suchanek@gmx.de> wrote:
>>>
>>> Das Problem dabei: Die Msg-IDs werden zwar den Newsfeed
>>> übergeben (zu sehen in /var/log/news/news), werden aber
>>> nicht bzw. nicht zeitnah vom Perl-Programm verarbeitet.
>>> Erst wenn ich INN beende, werden die Daten geschrieben.
>>
>>> Wie kann ich also INN bzw. mein eigenes Programm dazu
>>> bringen, die einlaufenden Daten auch wirklich zeitnah zu
>>> verarbeiten?
>>
>> Evtl. hilft schon etwas von hier:
>> [...]
>
> Danke, das scheint in der Tat geholfen zu haben.
>
> Jetzt geht's erstmal ans Weiterbasteln. Sobald ich 'was halbwegs
> Vorzeigbares fertig habe, melde ich mich wieder. :-)

Was definitiv funktioniert, ist cancelwatch, ein Perl-Script, das bei
Cancels und Supersedes Mails verschickt. Ich weiß nicht mehr, von wem
ich das hab, vermutlich von Sven Hartge. Bei Interesse kannst Du mir
mailen, ich schicke Dir das relativ kleine Script dann zu.
Re: Eigenen Channel schreiben fuer INN2?
#27395
Author: Sebastian Suchan
Date: Sun, 08 Jan 2017 10:59
15 lines
412 bytes
Thus spoke Holger Marzen:

> [...]
> Was definitiv funktioniert, ist cancelwatch, ein
> Perl-Script, das bei Cancels und Supersedes Mails
> verschickt. Ich weiß nicht mehr, von wem ich das hab,
> vermutlich von Sven Hartge. Bei Interesse kannst Du mir
> mailen, ich schicke Dir das relativ kleine Script dann zu.

Danke, Anregungen sind immer willkommen - meine From-Adresse
funktioniert.


Tschüs,

Sebastian
Re: Eigenen Channel schreiben fuer INN2?
#27396
Author: Sven Hartge
Date: Sun, 08 Jan 2017 11:08
13 lines
442 bytes
Holger Marzen <holger@marzen.de> wrote:

> Was definitiv funktioniert, ist cancelwatch, ein Perl-Script, das bei
> Cancels und Supersedes Mails verschickt. Ich weiß nicht mehr, von wem
> ich das hab, vermutlich von Sven Hartge. Bei Interesse kannst Du mir
> mailen, ich schicke Dir das relativ kleine Script dann zu.

Nein, das Script ist definitiv nicht von mir. Geschrieben hat das Ralf
Döblitz.

S°

--
Sigmentation fault. Core dumped.
Re: Eigenen Channel schreiben fuer INN2?
#27397
Author: Thomas Hochstein
Date: Sun, 15 Jan 2017 17:44
13 lines
517 bytes
Sven Hartge schrieb:

> Holger Marzen <holger@marzen.de> wrote:
>
>> Was definitiv funktioniert, ist cancelwatch, ein Perl-Script, das bei
>> Cancels und Supersedes Mails verschickt. Ich weiß nicht mehr, von wem
>> ich das hab, vermutlich von Sven Hartge. Bei Interesse kannst Du mir
>> mailen, ich schicke Dir das relativ kleine Script dann zu.
>
> Nein, das Script ist definitiv nicht von mir. Geschrieben hat das Ralf
> Döblitz.

Und er hat es auch online gestellt:
<http://www.escape.de/~selene/Usenet/cancelwatch
Thread Navigation

This is a paginated view of messages in the thread with full content displayed inline.

Messages are displayed in chronological order, with the original post highlighted in green.

Use pagination controls to navigate through all messages in large threads.

Back to All Threads