Cel mai ciudat debugging

Cel mai ciudat debugging

Acum ceva timp am mutat siteul unui client de pe un server Siteground pe unul la DO. Mutarea a fost lipsită de evenimente, downtime minim, toată lumea fericită.

Doar că, uneori, site-ul crăpa. Pur și simplu, pagină albă, nu dădea nici o eroare, nu apărea nimic în logs, nu nimic. Iar totul era imprevizibil, nu avea legătură cu numărul de vizitatori, cu ora (inițial credeam că-i ceva în cron), sau vreun alt pattern la care m-aș fi putut gândi. Fuckery maxim.

Am avut nevoie de câteva ore să-mi dau seama că Siteground adaugă un include silențios:

@include '/path/to/some/file.php';

Iar aici erau două chestii de care habar n-aveam:

  1. @ previne nu doar afișarea erorilor, dar și logarea lor;
  2. Că un include eronat poate pune site-ul în nas în moduri total imprevizibile.

Mi-am adus aminte azi, când am făcut update la xdebug 3 și a trebuit să-i ajustez setările și am descoperit o setare utilă în astfel de cazuri: scream!

În php.ini adaugi:

xdebug.scream=1

Și gata.

Sigur, opțiunea este disponibilă de la Xdebug 2.1, dar hei, cine să citească manualele?

5 Comentarii

Adaugă un comentariurăspuns pentru

Poți adăuga bucăți de cod folosind [code]codul tău aici[/code], [js][/js], [php][/php] etc.

Link-urile în context sunt binevenite. Comentariile fără nume/email valid sunt șterse.
PS: Comentariul NU este editabil.

Acest site folosește Akismet pentru a reduce spamul. Află cum sunt procesate datele comentariilor tale.

Site-ul blog.iamntz.com utilizează cookie-uri. Continuarea navigării presupune acceptarea lor. Mai multe informații.

windows apple dropbox facebook twitter