pyinotify - stellt nach n Stunden die Arbeit ein

Wenn du dir nicht sicher bist, in welchem der anderen Foren du die Frage stellen sollst, dann bist du hier im Forum für allgemeine Fragen sicher richtig.
Antworten
taake
User
Beiträge: 125
Registriert: Donnerstag 14. Oktober 2010, 08:49

Hat leider nichts gebracht das ganze nochmal umzuschreiben.
Python inotify scheint defintiv broken zu sein, hab beim project bescheid gesagt.
Vielleicht können die da was fixen.

Versuchs jetzt mir was mit os.system() bash und "inotifywait" zusammenzufrickeln.
Was dann hoffentlich auch mehrere Tage durchläuft ohne Probleme.

Also am Mailversand liegt es defintiv nicht, da der inaktiv war und es trotzdem nicht ging.
Das script selbst selbst läuft weiter, scheint also defintiv an der inotify implementierung in python zu liegen.

Hoffentlich wirds gefixt, war echt angenehm einfach.

Vielen Dank für eure Hilfe, wenn ich was von nem Entwickler hören sollte sag ich euch noch bescheid.
Benutzeravatar
sparrow
User
Beiträge: 4187
Registriert: Freitag 17. April 2009, 10:28

Interessant wäre noch zu erfahren auf was für einer Distribution du das versucht hast umzusetzen, woher das pyinotify stammt.

Ich habe das bisher einmal benutzt, und zwar auf einem Debian Lenny. Python und pyinotify kamen direkt aus den Debian-Quellen. Das hat problemlos, auch über Tage hinweg, funktioniert.
Dabei ging es es um eine Daemon der im Hintergrund läuft, über neue Dateien informiert wird (sich diese merkt) und nach dem schließen der Datei (fertig geschrieben, Upload kann dauern) Programme aufrufen die diese Datei als Input nutzen.
Wie gesagt, das ganze war relativ simpel und hat ganz gut funktioniert.


Gruß
Sparrow
taake
User
Beiträge: 125
Registriert: Donnerstag 14. Oktober 2010, 08:49

Also laufen tut das ganze auf nem x86 gentoo system.
Installiert ist via portage dev-python/pyinotify-0.9.2
lt. ebuild nimmt er das hier
http://seb.dbzteam.org/pub/pyinotify/re ... 9.2.tar.gz
lunar

@taake: Hast Du geprüft, ob pyinotify überhaupt die Ursache ist? Funktioniert "inotifywait" denn? Was ist denn die Ausgabe von "sysctl fs.inotify"? Was zeigt "ls -l /proc/${PID_DEINES_SKRIPTS}/fd"?

Edit: Nochwas: Gibt es bei der Ausführung Deines Skripts auffällig Einträge im syslog (meist "/var/log/messages", machmal auch "/var/log/syslog")?
Antworten