View Single Post
Old 08-11-2008, 23:46   #1
avastreg
Senior Member
 
L'Avatar di avastreg
 
Iscritto dal: Sep 2007
Messaggi: 316
Ubuntu-Python] (py)inotify.. comportamento non previsto

Ciao a tutti!

Avrei bisogno di una mano con questo inotify.

Inotify per chi non lo sapesse è un "watcher" che in pratica osserva le modifiche effettuate in una cartella (modifica/cancellazione di file bla bla bla) e li riporta sotto forma di segnali (credo).

Pyinotify è il wrapper (ho detto bene?) di inotify scritto in python, che permette di gestire questi report con python.

Io sto usando questo pyinotify perchè voglio sapere quando amule ha completato un file e l'ha spostato dalla cartella dei temp a quelli di default per i download.

Ho fatto funzionare un po' tutto, infatti se manualmente creo (o rimuovo) dei file nella cartella osservata, il report avviene. Ma quando amule ci crea un file, non viene fatto nessun report

Non riesco a capire dove sta l'inghippo..

Ecco il codice python (per completezza):

Codice:
from pyinotify import WatchManager, Notifier, \
    ThreadedNotifier, ProcessEvent, IN_DELETE, \
    IN_CREATE

import MySQLdb

wm = WatchManager()  # Watch Manager
mask = IN_DELETE | IN_CREATE  # watched events

class PTmp(ProcessEvent):
    def process_IN_CREATE(self, event):
        print "Creating:", event.pathname
        //faccio qualcosa

    def process_IN_DELETE(self, event):
        print "Removing:", event.pathname

p = PTmp()
notifier = Notifier(wm, p)
wdd = wm.add_watch('/home/alle/Downloaded', mask, rec=True)

notifier.loop()
helpp

Il codice in realtà non è fondamentale, penso sia più un problema alla base di unix e di questo inotify (ed è per questo che non l'ho messo in Programmazione).. che ne pensate?
avastreg è offline