ServerTutorial

Dove trovare i log di Apache e MySql via SSH

Dove possiamo trovare i log delle operazioni del nostro sito? Conoscere questa procedura è fondamentale per una serie di ragioni, tra cui quella di effettuare il debug di un blog in WordPress o Drupal, ad esempio, alla ricerca di eventuali problemi causa di errori imprevisti nel sito, rallentamenti e così via.

Le operazioni che MySql e Apache effettuano, fino a prova contraria, non vengono loggate se non lo si specifica all’interno dei rispettivi file di configurazione: utilizzando Linux tutte queste operazioni avvengono all’interno di file di testo appositi, scritti in chiaro e modificabili dall’utente in modo da garantire il pieno controllo della macchina server. Quindi anzitutto bisognerà capire in primis come abilitare questa caratteristica, e succesivamente dove il sistema tracci le operazioni eseguite dall’uno e dall’altro.

Come abilitare i log di MySql e Apache

Per effettuare il log a scopo di debug delle operazioni effettuate sul database, è sufficente effettuare il login nella sessione SSH (ci serviranno ovviamente le credenziali di accesso, username e password) e una volta entrati nel sistema remoto digitare:

pico /etc/mysql/my.cnf

oppure

pico /etc/mysql/my.cnf

ed aggiungere la riga all’interno del file in questione:

log=/var/log/mysql.log

in corrispondenza della sezione del file denominata [mysql]. A seconda delle distribuzioni Linux (CentOS, Debian o altre) il file my.cnf sarà localizzato in differenti sezioni del filesystem, che potremo trovare facilmente digitando:

find / -name my.cnf

che restituirà il path di interesse (ad esempio su macchina Debian è /etc/mysql/my.cnf):

root@debian:~# find / -name my.cnf
/etc/mysql/my.cnf

Per abilitare le modifiche ricordiamoci, infine, di riavviare il server MySql:

/etc/init.d/mysql restart

oppure

service mysql restart

Per quanto riguarda Apache, invece, i file di errore si trovano alle seguenti locazioni tipiche:

  1. RHEL / Red Hat / CentOS / Fedora Linux : /var/log/httpd/error_log
  2. Debian / Ubuntu Linux : /var/log/apache2/error.log
  3. FreeBSD : /var/log/httpd-error.log

e si possono editare alle seguenti locazioni:

pico /usr/local/etc/apache22/httpd.conf
pico /etc/apache2/apache2.conf
pico /etc/httpd/conf/httpd.conf

avendo cura di accertarsi che sia presente nei suddetti file .conf una riga tipo:

ErrorLog "/var/log/httpd-error.log" #il path ed il nome del file cambiano a seconda delle versioni di Linux

ovvero che inizia con ErrorLog, e di riavviare Apache per confermare le modifiche:

service apache2 restart

oppure

service httpd restart

Dove leggere (e trovare) i log di MySql e Apache

Normalmente, dunque, troveremo i log all’interno dei file che abbiamo specificato al punto precedente:

  1. per MySql:
    /etc/my.cnf
    /etc/mysql/my.cnf
  2. per Apache:

    pico /usr/local/etc/apache22/httpd.conf
    pico /etc/apache2/apache2.conf
    pico /etc/httpd/conf/httpd.conf
    

Lascia un commento

Back to top button