Felrapport (programmering)

Den aktuella versionen av sidan har ännu inte granskats av erfarna bidragsgivare och kan skilja sig väsentligt från versionen som granskades den 1 november 2018; kontroller kräver 5 redigeringar .

Inom programmering är en felrapport ( engelsk  felrapport eller kraschrapport ) en fil som innehåller teknisk information om en exceptionell situation (undantag) som inträffat i programmet på användarens dator . I programmeringsterminologi kallas ett kritiskt fel som leder till att programmet kraschar (”crash”) även en crash eller “crash” (av engelska  crash ).

Felrapporter innehåller ofta information som kraschtyp, stackbild , programversion, CPU-typ, operativsystemversion och programlogg.

Skapa en felrapport

En kraschrapport skapas vanligtvis av ett speciellt program (engelsk crash reporter). Syftet med ett sådant program är att samla in data om kraschen som har inträffat och skicka dessa data över Internet till någon tredje part, vanligtvis är denna tredje part mjukvarutillverkaren. Felrapporten är avsedd att hjälpa mjukvaruutvecklare att ta reda på orsaken till kraschen och fixa den i efterföljande utgåvor av mjukvaruprodukten.

Mac OS X

I Mac OS X finns ett standardprogram - en kraschrapportsamlare: /System/Library/CoreServices/Crash Reporter.app. Crash Reporter.app skickar kraschloggar i Unix-standard till Apple Computer, där loggarna analyseras av deras ingenjörer. Det övre fältet i felrapportfönstret innehåller kraschloggen, och det nedre fältet låter användaren skriva kommentarer, till exempel för att berätta vad han gjorde när kraschen inträffade. Användare kan också kopiera loggen och skicka den till mjukvaruutvecklaren för analys. Crash Reporter.app fungerar i tre huvudlägen vid ett fel: gör ingenting, visa meddelandet "Applikationen har kraschat" eller visa ett felrapportfönster.

Windows

Microsoft Windows XP inkluderar en felrapporteringstjänst som heter Windows Error Reporting (inte att förväxla med Dr. Watson ) som låter dig skicka en felrapport till Microsoft för onlineanalys. Informationen skickas till en centraliserad databas som hanteras av Microsoft. Rapporten innehåller nödvändig information som gör det möjligt för utvecklaren att diagnostisera orsaken till felet och rätta till det.

Windows har förmodligen det mest sofistikerade felanalyssystemet hittills, där en centraliserad databas kan konfigureras för att samla in ytterligare information från användare som upplever en viss typ av problem. Systemet täcker alla delar av processen med att felsöka och släppa programvara på ett sådant sätt att korrigeringar kan tillämpas på programvara på användarens dator automatiskt via tjänsten Windows Update .

GNOME

På GNOME-plattformen används Bug Buddy- verktyget för att samla in och skicka felrapporter . När en applikation som använder GNOME-biblioteken kraschar, genererar Bug Buddy en stack-ögonblicksbild med gdb-debuggern och uppmanar användaren att skicka en bugzilla-rapport till GNOME-systemet. Användaren kan lägga till sin kommentar och se vad som finns i rapporten.

KDE

Verktyget för att skicka felrapporter till KDE heter Dr. Konqi.

Mozilla

Talkback

(även känd som Quality Feedback Agent ) var ett felrapporteringsverktyg i Mozilla -programvara upp till version 1.8.1 för att skicka felrapporter till en centraliserad server. [1] Talkback är proprietär programvara licensierad av Mozilla Corporation från SupportSoft. När Mozilla-produkter (t.ex. Mozilla Firefox , Mozilla Thunderbird ) kraschade, uppmanade Talkback-agenten användaren att ange en beskrivning av felet. Talkback ersätter inte det inbyggda felrapporteringsprogrammet som körs tillsammans med Talkback-agenten. Talkback har ersatts av Breakpad-programmet i webbläsaren Firefox sedan version 3.

Breakpad

Arkiverad från originalet den 3 februari 2012, Breakpad . (tidigare även känd som Airbag) är ersättaren för Talkback. Det är programvara med öppen källkod. Breakpad utvecklas gemensamt av Google och Mozilla och används i nuvarande produkter baserade på Mozilla-motorn som Firefox eller Thunderbird. [2] [3] Denna produkt är av stor betydelse eftersom det är det första felrapporteringsverktyget för flera plattformar med öppen källkod.

Från och med den 27 maj 2007 har Breakpad inkluderats i trunkbyggen av Firefox 3 för Windows NT och Mac OS X, och några veckor senare på Linux. [fyra]

Ubuntu

Med lanseringen av Ubuntu 6.10 inkluderar Ubuntu verktyget Apport [5] .

Apport fångar upp processer som har ett undantag och håller på att skapa en kärndump, och skriver felrapporter till en specifik plats. Sedan uppmanar en speciell demon användaren att skicka rapporter till Ubuntu för analys. [6]

World of Warcraft

World of Warcraft  är ett spel som använder sitt eget felrapportleveransverktyg som heter "Error Reporter". Men det här verktyget fångar inte alltid undantag; ibland anropas istället standardverktyget för kraschrapporter som är inbyggt i operativsystemet. Felrapportören har varit känd för att ibland krascha av sig själv när en felrapport skickas.

CrashRpt

Ett annat bibliotek för att leverera felrapporter på Windows operativsystem är CrashRpt [7] [8] . CrashRpt-biblioteket låter dig fånga undantag i program skapade i Microsoft Visual C++ och som körs på Windows . Biblioteket distribueras under den "nya" BSD-licensen .

CrashRpt fångar obehandlade undantag, genererar en minidump-fil, bygger en XML -felbeskrivning , tillhandahåller ett användargränssnitt och komprimerar slutligen rapporten och skickar den till applikationens supportteam.

Se även

Anteckningar

  1. Mozilla Talkback-server . Hämtad 21 september 2006. Arkiverad från originalet 5 april 2012.
  2. Utplacering av krockkudden Arkiverad 28 juni 2008 vid Wayback Machine . BSBlog (Mozilla-utvecklaren Benjamin Smedbergs webblogg).
  3. Använda Breakpad med Gran Paradiso (1.9a3) Arkiverad 15 juni 2008 på Wayback Machine . BSBlog (Mozilla-utvecklaren Benjamin Smedbergs webblogg).
  4. Bug 381099 - Aktivera kraschrapportering som standard (Win+Mac) Arkiverad 27 juli 2020 på Wayback Machine , buggspårare på mozilla.org]
  5. EdgyReleaseNotes (nedlänk) . Hämtad 14 februari 2007. Arkiverad från originalet 13 juni 2007. 
  6. Apportera . Ubuntu Wiki . Hämtad 14 februari 2007. Arkiverad från originalet 11 maj 2015.
  7. CrashRpt-projektsidan . Datum för åtkomst: 20 augusti 2009. Arkiverad från originalet den 3 februari 2012.
  8. Använda CrashRpt-biblioteket . Hämtad 5 juli 2010. Arkiverad från originalet 5 april 2012.