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

Re: Debian systemd maintainer resigns due to online bullying + risultati votazione DD



Ciao,
Scusate se riporto la conversazione per intero, ho decisamente bisogno di spiegazioni tecniche, c’è qualcosa che proprio non capisco...

Il giorno 19/nov/2014, alle ore 20:50, Davide Prina <davide.prina@gmail.com> ha scritto:

> On 19/11/2014 10:04, Gian Uberto Lauri wrote:
>> Davide Prina writes:
>>> On 18/11/2014 16:01, franchi wrote:
>>>> Il 18/11/2014 10:45, Gian Uberto Lauri ha scritto:
>>> 
>>>>> Log in binario.
>>> 
>>>>> Nel momento in cui vai a guradare un log per cercare di capire le
>>>>> cause del disastro ti trovi a lavorare con una delle console o un
>>>>> terminale fisico.
>>> 
>>> ma scusa, tu tratti questo argomento senza cercare il motivo per cui il
>>> log è in formato binario? Non ti sei mai chiesto come mai?
>> 
>> Scrivi i dati in binario quando non vuoi perdere tempo a riconvertirli
>> in testo.
> 
> veramente è più complesso gestire i log in formato binario che in formato testuale dove butti dentro tutto senza struttura alcuna
> 
>> 
>>> Secondo me lo hanno fatto per avere un log indicizzato a cui puoi
>>> accedere velocemente e avere risposte più puntuali.
>> 
>> Davide, perdonami. Su quale pianeta è impossibile indicizzare un file
>> di testo?
> 
> indicizzare un file di testo di lunghezza variabile, è possibile farlo, ma per farlo ti serve un file binario o per lo meno numerico non facilmente accessibile... ma non ottieni quello che puoi ottenere con un file binario di un database: prestazioni, facilità di reperimento dati con semplici query, ...
> Ma qui stiamo parlando di log e dato che i log hanno una gestione un po' speciale, rispetto ad un normale file di testo, le cose si complicano e risulta molto complesso indicizzare tali file: i log sono cancellati, continuamente aggiornati, compressi, ruotati, ... o modifichi tutti i programmi che agiscono sui log o devi lasciare qualcosa attivo che ad ogni modifica capisce cosa è successo e aggiorna gli indici... secondo me su un server una cosa del genere può arrivarti ad azzoppare il server...
> 
> L'unica scelta concreta è usare un file binario.

Allora, io un file testuale lo so spezzare: lo faccio al newline, e conosco mille e più modi per farlo (sed, awk, split, ed anche sh con un po’ di vodoo). So anche concatenare i log spezzati e compressi da logrotate, per estendere una indagine a più file log. E probabilmente sarei capace di scrivermi un “coso” in python che emula il funzionamento di logrotate, senza essere un pythonista cintura nera. 

E forse sono ingenuo, ma pensavo che per fare ricerche e filtrare i contenuti di quei log potessi usare grep, awk, sec e vim. O al peggio i miei occhi, scorrendo le righe dei log. 

Ripeto, sarò ingenuo, ma non capisco alcune cose (sarei felice se me le poteste spiegare, davvero, non è polemica, è ignoranza tecnica):

1. Come si fa a “spezzare” un file binario? “dove” si fa? Con che logica dovrebbe funzionare un clone di logrotate che funziona su un log binario?
2. Il fatto che il log sia binario elimina la necessità di ruotarlo e comprimerlo? Come?
3. Perché dovrei indicizzare un file di log? Cosa c’è che non va nelle ricerche fatte ad esempio con grep semplicemente quando serve? Come potrebbe un file binario agevolare il lavoro di tool come logcheck, per esempio? (tempo fa ho “greppato” un log di 30MB da un server con un problema hardware che rendeva il kernel logorroico, e sono sopravvissuto senza avere indici…)
4. Abbiate pazienza, non capisco neanche perché dovrebbe essere più semplice o più efficiente appendere contenuti ad un file binario rispetto ad appendere una riga ad un file testuale.
5. In condizioni assurdamente disperate, potrei copiare un file log sul computer di mio cugino ;-) su cui gira Windows, con l’intenzione di esaminarli. Come faccio se sono binari? (se sono testuali, in assenza di meglio, posso usare il buon vecchio Wordpad).

grazie a chi avrà la pazienza di aiutarmi a capire.

saluti
gerlos

--
"Fairy tales are more than true, not because they tell us that dragons exist, 
but because they tell us that dragons can be beaten."
					G. K. Chesterton
      <http://gerlos.altervista.org>
gerlos +- - - > gnu/linux registred user #311588

--
"Fairy tales are more than true, not because they tell us that dragons exist, 
but because they tell us that dragons can be beaten."
					G. K. Chesterton
       <http://gerlos.altervista.org>
gerlos +- - - > gnu/linux registred user #311588


Reply to: