Ho bisogno di aiuto per valutare quale sarà il corretto design di un'applicazione a matrice intrecciata. O qualsiasi URL per aiutarti a farlo.python, twistedmatrix ... registrazione tramite socket
- sfondo: io uso la capacità di registrazione incluso con twistedmatrix utilizzando
FileLogObserver
, e un costumeDailyLogFile
per propage e salvare i dati di file system e per la successiva analisi.
Ora, ho intenzione di usare molte differenti tali applicazioni che faranno di posti di lavoro e la loro inviati i messaggi del registro come evento programmato in molti file di log intrecciati (file distinti). Così i miei eventi sono composti da (timestamp, data)
ho bisogno di un modo di leggere ogni di questa messaggi registrati (timestamp, data)
in tempo reale e centralizzare caso raggruppandole in base tempo, che sta avendo alcuni calcoli e di gruppo per il tutti gli eventi che hanno esattamente lo stesso timestamp.
ho ragione di supporre che posso farlo con funzionalità di log intrecciati?
come lo progetteresti in modo semplice?
il mio attuale pensiero era quello di costruire un logger con socket twisted e duplicare il processo di registrazione in modo che ogni evento fosse inviato al registratore di file (ho bisogno della cronologia separata) ma anche tramite il socket a un ricevitore (ora ho bisogno anche di tempo reale). Se sto scavando a destra in questo modo, qualcuno ha uno scheletro per un tale registratore di prese twistato? come posso incatenare due logger da twisted?
per l'altra parte quale dovrebbe essere il ricevitore del logger corretto?
poichè anch'io propagherò i dati calcolati/aggregati attraverso un server lighstreamer utilizzando lo schema seguente possono esserci alcune difficoltà che potrei non aver visto, che necessiteranno di qualche meccanismo di threading o altro mecanismo per evitare alcune chiamate di rete bloccanti?
feed = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
feed.connect(("localhost",MYPORT))
feed.send(mytimestamp, myeventdata)
come una figura che potrebbe essere schematizzato come: con la (quasi tutto in tempo reale)
producerTimedEventLog1 --->|
producerTimedEventLog2 --->|
... |---> loggerReceiverComputingData ---> lighstreamer process ---> mozilla or whatever webclient
... |
producerTimedEventLognN--->|
ogni producerTimedEventLognN anche la registrazione in un file.
Mi interessa ogni idee utili :)
migliori saluti
Tutto ciò che devi sapere? –