<?xml version="1.0" encoding="UTF-8"?><rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>debug - Matteo Cisilino</title>
	<atom:link href="https://www.cisilino.com/tag/debug/feed/" rel="self" type="application/rss+xml" />
	<link>https://www.cisilino.com</link>
	<description>Guide su WordPress, server e sicurezza</description>
	<lastBuildDate>Fri, 30 Oct 2026 16:05:59 +0000</lastBuildDate>
	<language>it-IT</language>
	<sy:updatePeriod>
	hourly	</sy:updatePeriod>
	<sy:updateFrequency>
	1	</sy:updateFrequency>
	<generator>https://wordpress.org/?v=7.1.4</generator>
	<item>
		<title>Log di debug: gli errori PHP in un file proprio</title>
		<link>https://www.cisilino.com/2026/10/30/manuale-csdn-log-di-debug/</link>
					<comments>https://www.cisilino.com/2026/10/30/manuale-csdn-log-di-debug/#respond</comments>
		
		<dc:creator><![CDATA[matteocisilino]]></dc:creator>
		<pubDate>Fri, 30 Oct 2026 16:05:59 +0000</pubDate>
				<category><![CDATA[Manuale CSDN]]></category>
		<category><![CDATA[Cisilino Site Defense Network]]></category>
		<category><![CDATA[debug]]></category>
		<category><![CDATA[errori PHP]]></category>
		<category><![CDATA[manuale CSDN]]></category>
		<guid isPermaLink="false">https://www.cisilino.com/?p=985</guid>

					<description><![CDATA[<p>Come accendere il Log di debug del plugin CSDN dalla versione 1.0.15: durata, dimensione dei file, rotazione, download e limiti.</p>
<p>The post <a href="https://www.cisilino.com/2026/10/30/manuale-csdn-log-di-debug/">Log di debug: gli errori PHP in un file proprio</a> first appeared on <a href="https://www.cisilino.com">Matteo Cisilino</a>.</p>]]></description>
										<content:encoded><![CDATA[<p>Il log di debug WordPress è una novità del plugin CSDN dalla versione 1.0.15. Registra gli errori PHP del sito in un file proprio, senza toccare <code>wp-config.php</code>. Lo accendi dal backend e si spegne da solo.</p>
<figure class="wp-block-image size-large"><img fetchpriority="high" decoding="async" src="https://www.cisilino.com/wp-content/uploads/2026/10/manuale-csdn-log-di-debug.webp" alt="Schema di WordPress con la scheda Log di debug WordPress del plugin CSDN evidenziata" width="1200" height="630"/></figure>
<h2>Dove si trova</h2>
<p>Vai su Impostazioni &gt; Cisilino Site Defense Network (punto 1 dell&#8217;immagine) e apri la scheda <strong>Log di debug</strong> (punto 2). Le sezioni sono tre:</p>
<ul>
<li>punto 3: “Log di debug del sito”, con stato e accensione.</li>
<li>punto 4: “File raccolti”.</li>
<li>punto 5: “Ultime voci”.</li>
</ul>
<h2>A cosa serve il log di debug WordPress</h2>
<p>Ti torna utile quando il sito mostra una pagina bianca o un errore critico, quando qualcosa si rompe dopo un aggiornamento, o quando il tuo hosting non ti lascia modificare <code>wp-config.php</code> né leggere i log. Le costanti <code>WP_DEBUG</code> e <code>WP_DEBUG_LOG</code> si definiscono prima del caricamento dei plugin, quindi un plugin non può accenderle. Questo log usa un gestore di errori PHP agganciato al caricamento del plugin.</p>
<p>Questo log si aggiunge, non sostituisce niente. Gli errori continuano ad arrivare anche dove arrivavano prima, cioè in <code>debug.log</code> e nel log del server. Non invia nulla al pannello.</p>
<h2>Come si usa</h2>
<ol>
<li>Apri la scheda <strong>Log di debug</strong>.</li>
<li>Scegli <strong>Resta acceso per</strong>: <strong>1 ora</strong>, <strong>24 ore</strong> (predefinito) o <strong>7 giorni</strong>.</li>
<li>Scegli <strong>Dimensione massima per file</strong>.</li>
<li>Premi <strong>Accendi il log di debug</strong>. Leggi “Log di debug acceso. Si spegne da solo allo scadere del tempo scelto; i file restano.”.</li>
<li>Riproduci il problema sul sito.</li>
<li>Torna alla scheda. Leggi “Ultime voci” oppure scarica il file dalla sezione “File raccolti”.</li>
<li>Quando hai finito premi <strong>Spegni il log di debug</strong>, oppure aspetta la scadenza. Vedrai “Log di debug spento. I file raccolti sono ancora qui sotto.”.</li>
</ol>
<p>Lo “Stato:” ti dice se il log è “acceso, si spegne il gg/mm/aaaa hh:mm”, “spento (scaduto il …)” oppure “spento”. A log acceso puoi cambiare la dimensione con <strong>Salva dimensione</strong>.</p>
<h3>File raccolti</h3>
<p>La tabella elenca nome, dimensione e i pulsanti <strong>Scarica</strong> ed <strong>Elimina</strong>. Sotto trovi <strong>Elimina tutti i file</strong>. Prima di cancellare il plugin chiede conferma: “Eliminare questo file? L&#8217;operazione non si può annullare.”. Per <strong>Elimina tutti i file</strong> il testo è “Eliminare tutti i file del log di debug? L&#8217;operazione non si può annullare.”. Se non c&#8217;è nulla leggi “Nessun file: il log non è mai stato acceso o non ha ancora registrato nulla.”.</p>
<h3>Ultime voci</h3>
<p>Il riquadro mostra le 200 voci più recenti, dalla più nuova. Il menu <strong>Tutti i livelli</strong> ti permette di filtrare per Fatal error, Parse error, Recoverable error, Warning, Notice o Deprecated. Poi premi <strong>Filtra</strong>. Per tutto il resto scarica i file. Se il filtro non trova nulla leggi “Nessuna voce con questo filtro.”.</p>
<p>Una voce ha questa forma:</p>
<p><code>[2026-10-29 10:15:03 UTC] Warning: messaggio in /percorso/file.php:12 | GET /pagina</code></p>
<ul>
<li>L&#8217;orario è in UTC, diverso dall&#8217;ora del sito che vedi nel <a href="https://www.cisilino.com/?p=984">Registro attività</a>.</li>
<li>Dopo la barra verticale trovi metodo e percorso della richiesta, senza query string. Da riga di comando o cron vedi “cli/cron”.</li>
<li>Un messaggio su più righe, come uno stack trace, resta una sola voce con le righe successive rientrate.</li>
<li>Le righe “Info: log di debug attivato (utente N)” e “Info: log di debug disattivato (utente N)” non hanno un livello: con un filtro non compaiono.</li>
</ul>
<h2>Valori predefiniti e limiti</h2>
<ul>
<li>Durata del log di debug WordPress: 1 ora, 24 ore o 7 giorni. Un altro valore diventa 24 ore.</li>
<li>Dimensione per file: 1, 5, 10, 25 o 50 MB. Il predefinito è 5 MB. La dimensione scelta si salva quando premi <strong>Accendi il log di debug</strong> o <strong>Salva dimensione</strong>. Attenzione: <strong>Spegni il log di debug</strong> riporta la dimensione a 5 MB, perché quel modulo non contiene il menu della dimensione.</li>
<li>Tetto complessivo: 200 MB, sommando file <code>.log</code> e <code>.zip</code>.</li>
<li>Ogni messaggio è troncato a 4000 caratteri.</li>
<li>Registra solo errori PHP: non query lente, errori JavaScript o richieste HTTP.</li>
</ul>
<h2>Esempi</h2>
<ul>
<li>Errore critico dopo l&#8217;aggiornamento di un plugin: accendi per 1 ora, ricarica la pagina, filtra “Fatal error”. La voce indica file e riga, per esempio <code>/…/plugins/xyz/file.php:210 | GET /negozio/</code>.</li>
<li>Avvisi sporadici: 24 ore, filtro Warning o Deprecated. Se il file è stato ruotato, scarica lo zip.</li>
<li>Sito lento senza una causa chiara: 7 giorni con file da 25 MB, poi cerca Notice e Warning che si ripetono.</li>
</ul>
<p>Tieni acceso il minimo necessario: spesso basta 1 ora.</p>
<p><strong>Attenzione:</strong> i file del log di debug contengono percorsi del server e frammenti di dati. Non condividerli in pubblico. Restano sul disco anche dopo lo spegnimento e dopo la disinstallazione del plugin, che cancella le opzioni ma non i file. Eliminali tu quando hai finito. Il tetto complessivo è di 200 MB.</p>
<p><strong>Attenzione:</strong> su server nginx l&#8217;accensione può essere rifiutata finché il server non blocca la cartella <code>csdn-debug-*</code>. Il messaggio è “Log di debug non acceso: i file della sua cartella risultano raggiungibili da internet (probabile server senza supporto a .htaccess, come nginx). I log possono contenere percorsi e dati: blocca l&#8217;accesso alla cartella csdn-debug-* nella configurazione del server e riprova.”. Se non gestisci il server, chiedi a chi lo gestisce.</p>
<p><strong>Attenzione:</strong> il log non vede gli errori soppressi con <code>@</code> né quelli generati prima del caricamento del plugin. Per esempio non vede gli errori di <code>wp-config.php</code>. Il log di debug WordPress del plugin non sostituisce i log del server.</p>
<h2>Cosa succede dietro le quinte</h2>
<p>Il log di debug WordPress salva i file in una cartella <code>wp-content/uploads/csdn-debug-</code> seguita da 16 caratteri casuali. Dentro ci sono un <code>index.php</code>, un <code>.htaccess</code> che nega l&#8217;accesso e il file in uso <code>csdn-debug.log</code>. All&#8217;accensione il plugin scrive un file di prova e prova a leggerlo via HTTP. Se risponde, rifiuta di accendere il log.</p>
<p>Quando il file in uso supera la dimensione scelta viene chiuso, compresso in <code>.zip</code> e ne parte uno nuovo. Nessuna voce va persa. Il <code>.log</code> originale si cancella solo dopo aver verificato lo zip. Se la compressione non riesce, il <code>.log</code> resta. Le voci di “Ultime voci” vengono lette solo dal file in uso, quindi dopo una rotazione quelle vecchie sono negli zip.</p>
<p>Prima di ruotare il plugin controlla il tetto di 200 MB. Se è raggiunto, il log si ferma per non sovrascrivere nulla. Compare l&#8217;avviso giallo: “Il log si è fermato perché i file hanno raggiunto il tetto di spazio (200 MB): per non sovrascrivere i dati non scrive più. Scarica o elimina i file, poi riaccendilo.”. Per ripartire elimina i file e riaccendi.</p>
<p>Alla scadenza il log si spegne da solo, ma i file restano. Il plugin non li tronca e non li cancella mai: lo fai solo tu con <strong>Elimina</strong> o <strong>Elimina tutti i file</strong>. Per gli errori fatali la voce viene scritta a fine richiesta.</p>
<h2>Se il log di debug WordPress non funziona</h2>
<ul>
<li>“Log di debug non acceso: la cartella dei caricamenti non è scrivibile.”: controlla i permessi della cartella <code>wp-content/uploads</code>.</li>
<li>Il log non scrive: se la scrittura fallisce, il plugin lo segnala con una voce “Log di debug del sito: …” negli “Ultimi tentativi” della scheda <a href="https://www.cisilino.com/?p=984">Registro attività</a>.</li>
<li>Il log è fermo per il tetto: scarica ciò che ti serve, elimina i file e riaccendi.</li>
</ul>
<p>La <a href="https://www.cisilino.com/?p=972">guida generale al manuale</a> spiega dove si colloca questa scheda. Per capire meglio le costanti di WordPress guarda la <a href="https://developer.wordpress.org/advanced-administration/debug/debug-wordpress/" target="_blank" rel="noopener">guida ufficiale al debug di WordPress</a>: spiega <code>WP_DEBUG</code> e <code>WP_DEBUG_LOG</code>, che questo plugin non può sostituire.</p>
<p>Capitolo precedente: <a href="https://www.cisilino.com/?p=984">Registro attività</a>. Capitolo successivo: <a href="https://www.cisilino.com/?p=986">Risoluzione dei problemi e domande frequenti</a>.</p><p>The post <a href="https://www.cisilino.com/2026/10/30/manuale-csdn-log-di-debug/">Log di debug: gli errori PHP in un file proprio</a> first appeared on <a href="https://www.cisilino.com">Matteo Cisilino</a>.</p>]]></content:encoded>
					
					<wfw:commentRss>https://www.cisilino.com/2026/10/30/manuale-csdn-log-di-debug/feed/</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		
			</item>
	</channel>
</rss>
