2012-03-19 10 views
5

Sto cercando di registrare tutte le attività in corso nel mio server memcached. Tutto legge e scrive.Log Memcached Activity

Questo verrà utilizzato come un demone distribuito per molte app di php remote nel cloud e ha bisogno di un modo per accedere a SSH e controllare l'attività in corso sul demone.

Ho cercato su Google ampiamente e non riesco a trovare un unico modo per farlo.

L'equivalente Redis si collegava alla console interattiva e digitava MONITOR.

Grazie in anticipo.

+1

È possibile creare un'API per accedere a memcache e inserire la registrazione su questo livello. Ma credo che sconfiggere lo scopo di avere una memoria ad alte prestazioni. – ajreal

risposta

5

Si può fare questo comando utilizzando di memcached telnet stats come tale:

  • attivare le informazioni di cattura: stats detail on
  • aspettare un po '
  • disabilitare la cattura: stats detail off
  • scaricare le informazioni: stats detail dump

telnet yourhost 11211 ed eseguire la sequenza sopra. Si noti che ciò influirà notevolmente sulle prestazioni.

Inoltre, è possibile effettuare il check-out phpmemcacheadmin: si tratta di uno strumento davvero utile per il monitoraggio dei pool memcached.

3

Si può iniziare la memcached utilizzando il parametro -vv:

-vv   very verbose (also print client commands/reponses) 

L'output è simile al seguente:

Dec 12 10:33:12 hostname memcached[18350]: <33 new auto-negotiating client connection 
Dec 12 10:33:12 hostname memcached[18350]: 33: Client using the ascii protocol 
Dec 12 10:33:12 hostname memcached[18350]: <33 set your.key.1 3 300 525 
Dec 12 10:33:12 hostname memcached[18350]: >33 STORED 
Dec 12 10:33:12 hostname memcached[18350]: <33 get your.key.2 
Dec 12 10:33:12 hostname memcached[18350]: >33 sending key your.key.2 
Dec 12 10:33:12 hostname memcached[18350]: >33 END 

L'output viene inviato a stdout, così si potrebbe desiderare di destinarli in qualche file

0

Utilizzare supervisord per eseguire memcached. Registra l'output memcached (basato su 1,2 o 3 -v) su syslog - quindi log ruotare dovrebbe funzionare (non lo farà se si limita l'output a un file) e si può usare syslog per inviare tutto registra in una macchina di registrazione centrale (usando qualcosa come graylog2 per prendere tutte le informazioni di registro).