Junior — Middle
Welke belangrijke kenmerken maken het mogelijk om de oorzaak van fout 500 op de server te bepalen?
sobes.tech AI
Antwoord van AI
Fout 500 (Interne Serverfout) duidt op een probleem aan de kant van de server. De belangrijkste tekenen om de oorzaak te bepalen:
- Serverlogs: het bekijken van logs (bijvoorbeeld met het
log-pakket in Go) toont vaak de call stack en de exacte locatie van de fout. - Panic in Go: een onbehandelde panic leidt tot een 500-fout. Het controleren van de code op mogelijke panics en het afhandelen ervan met
recoverhelpt de oorzaak te achterhalen. - Fouten in HTTP-handlers: onjuiste gegevensverwerking, nil-zoekers, fouten bij het werken met databases.
- Onjuiste server- of afhankelijkheidsconfiguratie.
Voorbeeld van panic-afhandeling in Go:
func handler(w http.ResponseWriter, r *http.Request) {
defer func() {
if err := recover(); err != nil {
http.Error(w, "Interne Serverfout", http.StatusInternalServerError)
// log de fout
}
}()
// hoofdcode van de handler
}