Wat word ik blij van de error logs!

Wat word ik blij van de error logs!


Als programmeur heb je feedback nodig, hetzij van de gebruikers of bezoekers van je applicatie of website, als informatie uit de logbestanden van je computer of server. Vooral de fouten- ofwel errorlogs zijn in de meeste gevallen van onschatbare waarde.

Ik heb inmiddels wel geleerd dat je van de gebruikers of bezoekers totaal geen enkele feedback hoeft te verwachten, ondanks meerdere oproepen en verzoeken, komt er nul komma nul feedback informatie binnen. Dat is jammer, maar van de andere kant eigenlijk ook wel te verwachten. Gebruikers en/of bezoekers weten niet wat ze kunnen verwachten en wat ze zouden moeten verwachten en als er iets misgaat denken ze vaak dat het zo hoort te zijn. Dus dit is niet beledigend bedoeld naar de bezoekers of gebruikers, ik moet mezelf meer voor m'n kop slaan dat ik daar niet al teveel van moet verwachten.

Ik moet de focus meer leggen op het raadplegen van de diverse logbestanden die op elke computer wel ergens te vinden zijn en die je ontzettend veel informatie kunnen geven over wat er nu werkelijk aan de hand is of misgaat. Je moet alleen de logbestanden zien te vinden en jezelf erin verdiepen hoe je die dingen moet lezen, want dat laatste is soms nog wel een dingetje. Sommige logs zijn moeilijk te lezen en te doorgronden.

Neem nou de error logs van de webserver, er wordt een hele brij aan informatie gegeven over wat en waar het nu precies fout gaat. Dat kan makkelijk een heel scherm vol met allerlei letters en cijfers zijn. Allereerst worden datum en tijdstip genoemd, welk IP adres de fout tegenkomt, de melding dat er een fout is. Dan verschijnt er een foutmelding en vervolgens in welk bestand en op welke regel in dat bestand. Alleen dat is niet altijd de exacte locatie waar de oorzaak te vinden is, meestal zit de oorzaak een aantal regels code eerder of wordt de functie verkeerd aangeroepen. In dat geval staat er ook een Stack trace bij, zodat je terug kunt stappen.

Meestal kun je zo fouten snel opsporen door naar het bestand te gaan en dat regelnummer op te zoeken, soms zie je het in 1 oogopslag en kun je het snel verhelpen, maar ook vaak moet je wat verder op onderzoek uit en ligt het probleem ergens anders. En heel soms wordt er gewoon helemaal niks gelogd en dan wordt het gissen naar de oorzaak.

Tijdens het programmeren heb ik altijd zo'n error log meelopen in een terminal venster. Zo heb ik realtime informatie over wat er mis gaat. Gebruikers en bezoekers hebben deze informatie natuurlijk niet en voor hen lijkt de site normaal te werken en is het eigenlijk alleen zichtbaar als er een Fatale fout optreedt, want dan wordt alles afgebroken wat de weergave van de pagina betreft. Alleen ik kan dan in de log zien wat er misgaat en waar.

Maar ook als ik even niet bezig ben met programmeren, laat ik deze log wel eens gewoon meelopen, in zo'n geval zijn gebruikers en bezoekers ook weer waardevol, die doen soms acties waar je als programmeur even geen rekening mee hebt gehouden en die acties veroorzaken ook weer allerlei fouten. Je wilt niet weten wat mensen allemaal proberen op je website, deels onbewuste acties, maar helaas ook heel veel bewuste acties om bijvoorbeeld in het systeem te komen of te saboteren.

Maar bewust of onbewust, je programma moet er gewoon goed en netjes op reageren om een crash te voorkomen. Het beste is dat de bezoeker hier helemaal niks van merkt en dat z'n "illegale" actie wordt omgezet in een "legale" actie. Sommige pagina's verwachten 1 of meerdere parameters om goed te kunnen functioneren. Soms worden deze pagina's rechtstreeks aangeroepen zonder deze parameters en dan gaat het fout. Door goede controles in te bouwen kun je al veel zaken voorkomen. Op deze manier heb ik al heel veel fouten opgevangen, dankzij het mee laten lopen van de logbestanden.

Op deze manier wordt de website en het onderliggende programma steeds weer verbeterd en uiteindelijk zie je steeds minder fouten in de logs verschijnen. Helemaal foutloos krijg je het volgens mij nooit, maar we kunnen wel aardig in de buurt komen natuurlijk. Ja ik word hier wel blij van.

 

 

Foto's bij dit artikel:

Klik op een foto voor een vergroting.

Wat word ik blij van de error logs!

 

Reacties:

Dit artikel heeft helaas (nog) geen reacties.

Schrijf als eerste een reactie:

Geef een reactie:


Door op de knop "Reactie plaatsen" te drukken, ga je akkoord met de algemene richtlijnen voor het plaatsen van reacties. Reacties zullen echter niet direct op deze pagina verschijnen, deze worden eerst beoordeeld door de beheerder.