I log possono essere molto utili per la risoluzione dei problemi e il debug dei siti WordPress. Visualizzare i log degli accessi e degli errori di WordPress è piuttosto semplice: ecco come farlo.

Come visualizzare i log degli accessi e degli errori di WordPress

Esistono due modi per visualizzare i log degli accessi e degli errori di WordPress: uno è dalla dashboard di MyKinsta e l’altro è semplicemente scaricando i file di log grezzi.

Opzione 1 – Dashboard di MyKinsta

È possibile accedere ai log nella dashboard di MyKinsta. Si tratta di una soluzione veloce per eseguire il debug senza dover avviare il client FTP o la riga di comando.

Basta cliccare su uno dei siti WordPress e, nel menu a sinistra, cliccare su Log. È possibile visualizzare i file error.log, kinsta-cache-perf.log e access.log utilizzando le schede nella parte superiore della pagina.

File error.log

Uno screenshot della visualizzazione del file error.log nella dashboard di MyKinsta.
Il file error.log nel visualizzatore di log di MyKinsta.

File kinsta-cache-perf.log

Screenshot che mostra un file kinsta-cache-perf.log all'interno del visualizzatore di log di MyKinsta.
Il file kinsta-cache-perf.log nel visualizzatore di log di MyKinsta.

File access.log

Uno screenshot che mostra un file access.log all'interno del visualizzatore di log di MyKinsta.
Il file access.log nel visualizzatore di log di MyKinsta.

Opzione 2 – Visualizzare i log degli accessi e degli errori di WordPress via FTP

Il secondo modo per visualizzare i log è scaricare i file di log grezzi. Per prima cosa, sarà necessario collegarsi al sito tramite SFTP. Nella root si vedrà una cartella chiamata “logs”.

cartella log errori wordpress sftp

All’interno della cartella sono presenti i log degli accessi, i log degli errori di WordPress e i log della cache di Kinsta.

  • access.log
  • error.log
  • kinsta-cache-perf.log

log wordpress

Per gli archivi di log più vecchi, vengono creati automaticamente backup Gzip (.gz). Per maggiori informazioni sul debug di WordPress, si può consultare il codex.

Opzione 3 – Abilitare la modalità di debug in MyKinsta

Gli utenti di Kinsta possono attivare la modalità di debug di WordPress direttamente nella dashboard di MyKinsta. Basta navigare nella scheda Strumenti e cliccare sul pulsante Abilita alla voce Debug di WordPress.

Uno screenshot che mostra una parte della pagina Strumenti in MyKinsta con il pulsante Abilita debug di WordPress evidenziato.
Abilitare il debug di WordPress in MyKinsta.

Opzione 4 – Abilitare i log degli errori nel file wp-config.php

L’ultima opzione per visualizzare i log degli errori di WordPress è quella di abilitarli nel file wp-config.php. Per prima cosa, bisogna collegarsi al sito tramite SFTP, quindi scaricare il file wp-config.php in modo da poterlo modificare. Nota: è importante fare sempre un backup di questo file!

Scaricare il file wp-config.php
Scaricare il file wp-config.php

Trovate la riga che dice /* That's all, stop editing! Happy blogging. */ e, subito prima di questa, aggiungere quanto segue:

define( 'WP_DEBUG', true );
WP_DEBUG
WP_DEBUG

Se il codice qui sopra esiste già nel file wp-config.php ma è impostato su “false”, basta cambiarlo in “true”. In questo modo verrà attivata la modalità di debug. Nota: saranno visibili anche gli avvisi o gli errori nella bacheca di WordPress, se presenti.

Si potrà anche abilitare il log di debug in modo che tutti gli errori vengano inviati ad un file aggiungendo il seguente codice subito dopo la riga WP_DEBUG:

define( 'WP_DEBUG_LOG', true );
WP_DEBUG_LOG
WP_DEBUG_LOG

Salvate le modifiche e caricate nuovamente il sito sul server. Gli errori verranno registrati nel file debug.log all’interno della cartella /wp-content/. Se per qualche motivo questo file non c’è, si può sempre crearne uno.

Importante: se è stato abilitatoWP_DEBUG nell’ambiente di Kinsta, tutti gli errori saranno indirizzati al file debug.log e nulla sarà inviato a error.log nella dashboard MyKinsta.

Opzione 5 – Visualizzazione dei log tramite l’API di Kinsta

L’API di Kinsta è uno strumento potente che consente di interagire a livello di programmazione con i servizi di Kinsta, come i siti WordPress ospitati. L’API dispone inoltre di un endpoint che è possibile utilizzare per recuperare i log del proprio sito.

Per utilizzare l’API di Kinsta, è necessario disporre di un account con almeno un sito WordPress in MyKinsta. È inoltre necessario generare una chiave API per autenticarsi e accedere al proprio account.

Una volta ottenuta la chiave API, per accedere ai log del sito tramite l’API, è necessario specificare l’ID dell’ambiente del sito. È possibile ottenere l’ID dell’ambiente del proprio sito a livello di programmazione tramite l’endpoint “get site environment”, che restituisce i dettagli relativi all’ambiente del proprio sito, compreso il relativo ID:

{
  "site": {
    "environments": [
      {
        "id": "54fb80af-576c-4fdc-ba4f-b596c83f15a1",
        "name": "first-site",
        "display_name": "First site",
        "is_blocked": false,
        "id_edge_cache": "54fb80af-576c-4fdc-ba4f-b596c83f15a1",
        "cdn_cache_id": "54fb80af-576c-4fdc-ba4f-b596c83f15a1",
        "is_premium": false,
        "domains": [
          {
            "id": "54fb80af-576c-4fdc-ba4f-b596c83f15a1",
            "name": "example.com",
            "type": "live"
          }
        ],
        "primaryDomain": {
          "id": "54fb80af-576c-4fdc-ba4f-b596c83f15a1",
          "name": "example.com",
          "type": "live"
        },
        "ssh_connection": {
          "ssh_port": "808080",
          "ssh_ip": {
            "external_ip": "1xx.1xx.1xx.1xx"
          }
        },
        "container_info": {
          "id": "54fb80af-576c-4fdc-ba4f-b596c83f15a1",
          "php_engine_version": "php8.0"
        }
      }
    ]
  }
}

Una volta ottenuto l’ID dell’ambiente del sito, potete inviare una richiesta GET all’indirizzo:

https://api.kinsta.com/v2/sites/environments/{env_id}/logs?file_name=error&lines=100

Questa richiesta include il file di log che desiderate recuperare (access, error o kinsta-cache-perf) e il numero di righe di log da recuperare:

curl -i -X GET \
  'https://api.kinsta.com/v2/sites/environments/{env_id}/logs?file_name=access&lines=100' \
  -H 'Authorization: Bearer '

Questo restituirà una stringa contenente il numero specificato di righe di log:

{
    "environment": {
        "container_info": {
            "logs": "mysite.kinsta.cloud ::1 [07/Dec/2023:00:02:01 +0000] HEAD \"/wp-cron.php?server_triggered_cronjob\" HTTP/2.0 200 \"-\" \"curl/7.68.0\" - \"/wp-cron.php\" - - 230 0.017 0.018\nmysite.kinsta.cloud ::1 [07/Dec/2023:00:17:01 +0000] HEAD \"/wp-cron.php?server_triggered_cronjob\" HTTP/2.0 200 \"-\" \"curl/7.68.0\" - \"/wp-cron.php\" - - 230 0.139 0.139\nmysite.kinsta.cloud ::1 [07/Dec/2023:00:32:01 +0000] HEAD \"/wp-cron.php?server_triggered_cronjob\" HTTP/2.0 200 \"-\" \"curl/7.68.0\" - \"/wp-cron.php\" - - 230 0.016 0.016\nmysite.kinsta.cloud ::1 [07/Dec/2023:00:47:01 +0000] HEAD \"/wp-cron.php?server_triggered_cronjob\" HTTP/2.0 200 \"-\" \"curl/7.68.0\" - \"/wp-cron.php\" - - 230 0.015 0.015\n"
        }
    }
}

È quindi possibile formattare l’output in modo da separare ogni riga con il carattere di interruzione di riga n. Ad esempio, con JavaScript, è possibile utilizzare il metodo split():

const logsData = {
    "environment": {
        "container_info": {
            "logs": "string"
        }
    }
};

const logsString = logsData.environment.container_info.logs;

// Splitting the logs string into an array of log entries based on the newline character '\n'
const logEntries = logsString.split('\n');

console.log(logEntries);
Brian Jackson

Brian ha una grande passione per WordPress, lo usa da più di dieci anni e sviluppa anche un paio di plugin premium. Brian ama i blog, i film e le escursioni. Entra in contatto con Brian su Twitter.