|
|
| Line 1: |
Line 1: |
| '''Jasper:'''
| | #redirect [[Turning on debugging at runtime]] |
| Bij zandbakken op s4 staat het bijzonder slordig als klanten in hun testversie deze informatie te zien krijgen. (daar krijg je in contact met een klant vrijwel altijd vragen over)
| |
| | |
| '''Ivo:'''
| |
| Het is met name een kwestie van informatieverstrekking. Bij de Achievo
| |
| test installaties van Waag en Koning/Renes heb ik bewust de debug aan
| |
| laten staan, omdat ik die info wil hebben als ze een fout melden. Ik heb
| |
| ze dan ook erbij gezegd wat dit is, waarvoor het is, en dat ik het graag
| |
| wil ontvangen als ze een fout rapporteren. Op die manier is het geen
| |
| probleem dat het er staat en heeft de klant zelfs kunnen zien dat we
| |
| hier een methodiek voor hebben.
| |
| | |
| In alle M5/M6 platformen en ATK5 webapplicaties kun je gebruik maken van
| |
| 'smart debugging'. Daarbij gebruik je 1 van deze 2 methodes (of een combinatie):
| |
| | |
| | |
| ==Methode 1: debugging op IP==
| |
| | |
| Syntax:
| |
| | |
| $config_smart_debug[] = array("type"=>"ip","list"=>array("195.168.0.10","195.168.0.11"));
| |
| | |
| Dit is de nieuwe syntax voor de oude if-constructie. Het nadeel van deze
| |
| methode is dat je zelf altijd debug hebt, en je dus de config moet
| |
| aanpassen of je wil kijken of de site het ook doet zonder debuginfo
| |
| (bijv. om heisenbugs uit te sluiten).
| |
| | |
| ==Methode 2: debugging ter plekke aanzetten als je hem nodig hebt==
| |
| | |
| Dit is een methode die werkt *ZONDER* de config aan te passen (dus nooit
| |
| meer per ongeluk aan!). Je moet de feature alleen 1-malig activeren in
| |
| de config en een wachtwoord verzinnen. Dit is wat mij betreft de
| |
| voorkeurmethode.
| |
| | |
| Syntax eenmalig in de config:
| |
| | |
| $config_smart_debug[] = array("type"=>"request", "key"=>"eenwachtwoord");
| |
| | |
| Nadat je deze in je config hebt staan, kun je als volgt debug *realtime*
| |
| aktiveren:
| |
| | |
| ''<nowiki>http://eensite/index.php?atkdebug[key]=eenwachtwoord</nowiki>''
| |
| | |
| Alle vervolgrequests hebben automatisch debuginfo, totdat je hem weer
| |
| uitschakelt.
| |
| | |
| Het mooie is dat dit wachtwoord de debug *ALLEEN* voor je eigen sessie
| |
| aktiveert. De klant krijgt dus niets te zien. Wil je debug weer
| |
| uitzetten, dan volstaat het om even een verkeerd wachtwoord te zetten, bijv:
| |
| | |
| ''<nowiki>http://eensite/index.php?atkdebug[key]=off</nowiki>''
| |
| | |
| Wil je dit even uitproberen, ik heb dit op mijn eigen site draaien met
| |
| 'magicbeans' als wachtwoord:
| |
| | |
| gewoon site opvragen:
| |
| | |
| ''<nowiki>http://beta.epointment.com/</nowiki>''
| |
| | |
| debug aktiveren:
| |
| | |
| ''<nowiki>http://beta.epointment.com/index.php?atkdebug[key]=magicbeans</nowiki>''
| |
| | |
| gewone vervolg request zal nu ook debuginfo hebben:
| |
| | |
| ''<nowiki>http://beta.epointment.com/</nowiki>''
| |
| | |
| debug deaktiveren:
| |
| | |
| ''<nowiki>http://beta.epointment.com/index.php?atkdebug[key]=x</nowiki>''
| |
| | |
| Het is ook mogelijk om het debug level real-time aan te passen. Dit werkt op een zelfde manier als het aanzetten van de debug informatie in je sessie:
| |
| | |
| ''<nowiki>http://eensite/index.php?atkdebug[level]=2</nowiki>''
| |
| | |
| Hiermee kun je dus ook debugging uitzetten:
| |
| | |
| ''<nowiki>http://eensite/index.php?atkdebug[level]=0</nowiki>''
| |
| | |
| Dit werkt ook gewoon als je debugging op IP niveau gebruikt. Het eerder door Ivo opgenoemde nadeel van deze methode hoeft dus niet een nadeel te zijn.
| |