[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Re: script per analisi di log



On 19/10/12 17:08, Pierpaolo Mannone wrote:
Salve lista,

atttraverso un bash-script,

- deve essere proprio strettamente BASH? ...

dovrei estrarre da un file di log tutte le transazioni xml ( dal tag che inizia per "*<SOAP-ENV:Envelope*" al tag che termina con "*</SOAP-ENV:Envelope>*") in modo ordinato (ovvero scorrendo il file dal basso verso l'alto)e che contengono un dato
tag, con un dato valore.

(Per "tag con un dato valore" cosa intendi esattamente?)

-La stessa transazione può essere ripetuta piu' volte all'interno del file.. e mi servono tutte. -il file di log, contiene oltre l'xml anche dei messaggi di testo del servizio.
-L'xml che si trova all'interno del file di log non è sempre validato.

...
- Se _no_ (BASH) potresti provare con Python, estrarre l'XML è abbastanza semplice, a quel punto puoi usare una libreria come lxml per fare tutto ciò che ti serve con lxml. In questo caso potresti anche crearti un xml "fittizio" e poi analizzartelo, estrarre dati ecc.

- Se _sì_ (per forza BASH) ci sono diverse strategie che dipendono da quanto è "sporco" il file dal punto di vista dell'XML... Ad esempio potresti dare un'occhiata a xmllint (che fa parte del pacchetto libxml2-utils) che ha un'opzione --recover che estrae elementi parsabili da un documento non valido, oppure impelagarti in complicate regexp come suggerito da altri

Il tutto dipende _molto_ da come è fatto il file di log e di conseguenza da quanto è ingarbugliato estrarre i tag.

Lorenzo.


Reply to: