Jump to content
Sign in to follow this  
Valeriano Manassero

Monitoring Mysql 5.0 Open Source

Recommended Posts

Poi mi dirai come diavolo si configura mysql-proxy.

Non sono MAI (e dico MAI) riuscito a farlo funzionare e mi servirebbe per bilanciare due nodi in HA.

 

Ti ci sei impegnato molto per riuscire a non farlo andare eh? :cartello_lol:

Mi è capitato di usarlo un paio di volte (anche con un paio di script lua fatti da me per monitorare le query eseguite ed avere stats più approfondite) e faceva il suo dovere :)

 

Al più erano i mysql di backend che facevano venire i mal di pancia con la replica :062802drink_prv:

Share this post


Link to post
Share on other sites
Sopra dicevi che volevi evitare mysql-proxy per l'eterogeneità dei nodi etc.. inoltre mysql-proxy fa molte altre cose rispetto a quello che ti occorre ed è comunque un parser intermedio (se fosse stato direttamente dentro mysql forse, e dico forse, qualcosa poteva cambiare).

 

Altrimenti puoi solo abilitare i log lunghi, io non sono così sicuro che aumenti il carico più di un proxy, per non dire che non lo credo proprio... non c'è altra via di uscita.

In ogni caso se le esigenze sono quelle e non è per capriccio se serve occorre aggiungere risorse.

 

No, non ci siamo capiti. Abilitare i log di mysql (che non sono configurabili), mi crea file enormi in pochi minuti e poi devo parsare come un matto quando, di fatto io avrei bisogno di molte meno informazioni (database o user, timestamp della query, tipo di query).

Anche AWK, quando le formule di parsing sono complesse non scherza ad uso CPU, quindi andrei ad impattare CPU ed I/O in modo pesante. A sto punto mysql-proxy è un male minore perchè mi permette di loggare solo cosa mi serve e solo in una certa forma. Risparmio un bel po' di I/O e successivamente awk ci mette un attimo a tirare dentro i dati facendomi risparmiare CPU.

 

Il fatto che non volessi installarlo era per mantenere snelle le procedure di installazione e manutenzione, ma a questo punto non ho alternative.

Share this post


Link to post
Share on other sites
No, non ci siamo capiti. Abilitare i log di mysql (che non sono configurabili), mi crea file enormi in pochi minuti e poi devo parsare come un matto quando, di fatto io avrei bisogno di molte meno informazioni (database o user, timestamp della query, tipo di query).

 

Scusa, cosa avresti in più con i log lunghi?

Solo le query vere e proprie se non sbaglio, tra l'altro il log è sequenziale riga per riga e marcato dai cancelletti

(esempio preso in rete)

 

# Time: 040301 18:38:28
 # User@Host: pippo[pippo] @ localhost []
 USE dbProva;
 UPDATE Download SET IDuser=149, Descrizione="Inserimento automatico dati ", Updated="04-2-20" WHERE IDDown=7;
 # Time: 040301 18:50:59
 # User@Host: root[root] @ localhost []
 ALTER TABLE Download ADD vrs CHAR(10);
 # Time: 040301 19:02:13
 # User@Host: pippo[pippo] @ localhost []
 UPDATE Download SET IDuser=149, Descrizione="Aggiornamento database", Updated="04-2-28", vrs="1.0.5" WHERE IDDown=8;
 # Time: 040301 19:02:43
 # User@Host: rt[rt] @ localhost []
 DELETE FROM Download WHERE IDDown=7;

 

Quindi anche le regex possono essere snelle e veloci, con un log rotate veloce ed un pò di spazio disco puoi far lavorare di più la gestione dei log in orari mosci, cosa che con il proxy non puoi fare.

 

Però se hai già la tua idea.....

 

 

 

 

allora che A@@O chiedi a fare? :asd:

(sto scherzando, fai come ti pare meglio)

Share this post


Link to post
Share on other sites
Scusa, cosa avresti in più con i log lunghi?

Solo le query vere e proprie se non sbaglio, tra l'altro il log è sequenziale riga per riga e marcato dai cancelletti

 

Essendo che il log (come hai riportato) mi infila tutta la query ed essendo che, già di suo mysql è usato in maniera intensiva, in pochissimi minuti, avrei già dei log che supererebbero abbondantemente il centinaio di MB. Essendo che già di suo MySQL ha un uso I/O mica da ridere, quella sarebbe la mazzata definitiva, va bene il logrotate, ma non posso farlo intervenire ogni 2 minuti.

 

Quindi anche le regex possono essere snelle e veloci, con un log rotate veloce ed un pò di spazio disco puoi far lavorare di più la gestione dei log in orari mosci, cosa che con il proxy non puoi fare.

 

No anche qui, il processo di monitoring deve essere costante e "quasi" in realtime, in effetti mi ero scordato di scriverlo, non posso permettermi di frullare i log solo quando mi va.

 

allora che A@@O chiedi a fare? :asd:

(sto scherzando, fai come ti pare meglio)

In realtà, mi chiedevo se ci fosse un approccio che proprio non avevo valutato. Essendo che non c'è, si va per l'approccio "meno peggio". Non che la cosa mi faccia piacere, ma ci sono limiti evidenti su questo DB engine ed aggirarli non è uno sport che mi piace fare, ma se tra tutti qui, non abbiamo visto alternative, sono abbastanza certo che proprio non ci sono.

Share this post


Link to post
Share on other sites

No anche qui, il processo di monitoring deve essere costante e "quasi" in realtime, in effetti mi ero scordato di scriverlo, non posso permettermi di frullare i log solo quando mi va.

 

Se lo dicevi prima..... :ciapet:

Share this post


Link to post
Share on other sites
Se lo dicevi prima..... :ciapet:

 

Oh ma come sei diventato rompimaroni :asd:

Ho fatto una richiesta di aiuto con un numero di informazioni che l'utente medio qui non infila in 10 thread, non ho scritto che non so come sia riavvia mysql e tu stai a farmi le pulci? :asd:

E' proprio vero che certa gente si sente superiore agli altri, ricordo un certo Valeriano che era antipatico come una camionata di guano, per fortuna non risponde più ai thread di aiuto :asd:

Share this post


Link to post
Share on other sites

Senti Cicci....

 

Oh ma come sei diventato rompimaroni :asd:

Lo ero prima che tu nascessi :asd:

Ho fatto una richiesta di aiuto con un numero di informazioni che l'utente medio qui non infila in 10 thread, non ho scritto che non so come sia riavvia mysql e tu stai a farmi le pulci? :asd:

Se adesso te n'esci con la storia della condivisione delle informazioni... ti mando un fax tridimensionale con alcuni punti in evidenza :emoticons_dent2020:

E' proprio vero che certa gente si sente superiore agli altri, ricordo un certo Valeriano che era antipatico come una camionata di guano, per fortuna non risponde più ai thread di aiuto :asd:

 

Sta zitto che è meglio, guarda che ti regalo e chiediti perchè per il tuo amato apple non non lo facciano.....

 

 

lg-linux-fish.gif

 

E adesso se il tuo cliente legge questo forum ti sei bello che rovinata la reputazione, se ne avevi una :asd:

Share this post


Link to post
Share on other sites

Alla fine, ho deciso di pagare lo scotto di una manutenzione un pochino più estesa ed utilizzare mysql proxy.

L'impatto, con un logging davvero ridotto all'osso (come è giusto che sia), è praticamente impercettibile. Il pacchetto, di per sè, è maturo visto che i bug sono tutti marginali e non inficiano le procedure del software stesso.

Al limite sarebbe auspicabile una documentazione più aggiornata visto che molti costrutti in LUA funzionano in modo differente alle documentazioni ufficiali (ormai obsolete).

Non è un pacchetto "chiavi in mano" (se qualcuno passa di qua e pensa di installarlo con un colpo di apt o yum), soprattutto la messa in produzione richiede un po' di lavoro sugli script di startup e magari anche una ricompilatina con un paio di piccole modifiche sul codice, fondamentale se volete far bindare unix socket che rimangono "appesi" ad ogni riavvio rendendo il restart del servizio impossibile (non capisco come questo bug ricompaia ogni 2 minor release, sed transeat :asd: ).

 

EDIT:

Dimenticavo, grazie a tutti per la dritta :D

Share this post


Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
Sign in to follow this  

×