no nevim… nemam kde hledat, ale aspon podle https://code.launchpad.net/apport/trunk vydali prvni verzi v dubnu 2009, v tom pripade je abrt o dost starsi, takze tezko okopirovany
Neda se rict, ze by byl okopirovany – abrt nema s apportem spolecnou ani radku kodu, ale samozrejme sme se apportem a radou dalsich (bug-buddy, dr konqi, atd..) inspirovali (viz nase wiki na fedorahosted). Muze se zdat, ze tohle neni zrovna OS pristup a ze by bylo lepsi vylepsit stavajici kod nektereho z existujich reporteru, ale pro funkce, ktere sme chteli v apportu mit (rozsiritelnost pomoci pluginu) by to znamenalo tolik zmen, ze bylo lepsi to napsat znovu.
Jeste by to chtelo okopirovat neco od MS. MS ma webovou sluzbu, ktery reknete mam klihovnu abc.dll s CRC 1234 a ta sluzba vam vrati soubor s debug symbolama k ty knihovne. S debug symbolama to na linuxu tezky. Bud nejsou baliky vubec, nebo jen pro nektere aplikace, a kdyz jsou tak zabiraji strasne moc mista na disku. A tak je nikdo nema nainstalovany. A posilat vypis backtrace bez debug symbolu zase nema moc smysl.
Apport je v ubuntu uz aspon rok a pul (aspon v 8.04 je defaultne nainstalovany, a myslim ze byl i nekolik vydani predtim).
Dohledávání debug symbolů, viz https://wiki.ubuntu.com/Apport a apport-retrace.
Nahlasi ABRT i chyby v ABRT? Posle napr. mail ze prave segfaultnul?
Podle me to z principu nejde :) Jedine skutecne konzistentni reseni je podle me snazit se chyby v softwaru nedelat – skrze cisty navrh, audit kodu (jako dela OpenBSD) a spoustu dalsich vseobecne uznavanych good practices pri programovani.
Obavam se aby tenhle tool nemel za nasledek ze lidi zacnou chyby v programech brat mene vazne – kdyz tam bude nic se nedeje stejne ji to automaticky nahlasi.
Co by me potesilo kdyby byl program ktery by chybu nejen nahlasil, ale automaticky opravil, program prekompiloval a nainstaloval :)
Ono backtrace bez ladících symbolů je stejně jen málokdy užitečný.
Někteří programátoři si neumějí spočítat velikost bufferů, nebo správně spárovat malloc/free, případně ještě používají paměť po free(). Tam už je backtrace úplně k ničemu, protože často ukazuje do kódu, který pouze dostal paměť na stejném místě. Věčná sláva autorovi valgrindu!
Screenshot ukazuje další nepříjemnou vlastnost podobných nástrojů: Chudák správce nspluginwrapperu se asi musí denně probírat stovkami pádů, za které v 99,99% může Adobe Flash Plugin. Ten ovšem opravit nemůže, neboť jde o proprietární software.
Ano, cte a v urcitych pripadech jsou cennymi zdroji informaci. Predstav si demona, bezici v pozadi, poskytujici sluzby pres d-bus. Spadne-li, d-bus jej automaticky restartuje a uzivatel povetsinou nepozna, ze se neco stalo (obcas se objevi nedefinovane chovani aplikace, ktera ocekava nejake data od padleho demona). Az kontrolou logovanych padu (dmesg u novejsich kernelu) muze nekoho napadnout, ze neco pada. V tomto pripade je ABRT vitanym pomocnikem.