Berlin-Vegan / berlin-vegan-guide

mobile app for android
GNU General Public License v2.0
13 stars 9 forks source link

Sammlung und Auswertung von Crashreports #12

Closed smeir closed 9 years ago

smeir commented 9 years ago

es gibt einige Anbieter und Tools siehe https://android-arsenal.com/tag/21 Wenn wir es komplett selbst implementieren ist ACRA https://android-arsenal.com/details/1/100 wahrscheinlich ein guter Startpunkt

ces92 commented 9 years ago

Ich denke in Frage kommt dann bei ACRA nur die Dialogvariante https://github.com/ACRA/acra/wiki/AdvancedUsage#dialog

jmastr commented 9 years ago

Dann lasst uns doch ACRA nehmen. Habe mir gerade mal ein Beispielprojekt angeguckt. Das Aufsetzen scheint Android-seitig recht simpel zu sein. @smeir Könntest du mal ein (Test-)Backend einrichten?

IncorporateApps commented 9 years ago

Die Dialogvariante ist eigentlich sinnlos, da Android das von Haus aus anbietet, ich kann aber aus Erfahrung sagen, dass nur etwa 10% den Report Knopf drücken werden. Daher sollte man wenn schon den Silent Modus nehmen, bei dem der Bug report direkt verschickt wird, am Besten mit Toast.

jmastr commented 9 years ago

Sehe ich genauso wie @IncorporateApps.

ces92 commented 9 years ago

Dann muss das aber klar in die Beschreibung der App, dass wir Daten sammeln.

IncorporateApps commented 9 years ago

Es werden keine Daten gesammelt, nur crash report und device +Android Version

smeir commented 9 years ago

Ich habe mir einige Backends angeschaut und bin leider mit keinem so richtig warm geworden. Die meisten sind seit Jahren nicht aktualisiert, unvollständig, kaputte builds usw. Würde nicht so etwas wie https://github.com/d-a-n/acra-mailer ausreichen? Das Script könnte ich installieren. Bei jedem Crash bekommen wir dann eine ordentlich formatierte E-Mail an unseren Verteiler und wir können dann entscheiden ob wir ein Ticket daraus machen.

jmastr commented 9 years ago

Ich finde den ACRA Mailer okay. Scheint simple in der Einrichtung und Bedienung zu sein. Also bin dafür.

Nur eine Frage. Laut Beispiel hackt man das SHARED_SECRET direkt in den Source Code, was irgendwie die Idee eines shared secrets bei einem Open Source Projekt aushebelt, oder?

ces92 commented 9 years ago

Da kann ja für GitHub ein Platzhalter stehen. Ansonsten würde ich Mails nicht auf unsere Mailingliste laufen lassen, sonst werden wir von ziemlich vielen Mails erschlagen.

smeir commented 9 years ago

Ich hoffe wir werden nicht von den Mails erschlagen, ansonsten haben wir ein ernsthaftes Problem. Es werden ja nur E-Mails generiert, wenn die App komplett abstürzt und nicht bei jeder Exception. Zumindestens habe ich es so verstanden. Ich würde daher erstmal unseren Verteiler bevorzugen, man kann sich ja Filter bauen.

smeir commented 9 years ago

Ich habe mal das Script installiert und konfiguriert. Die E-Mail Adresse ist hart kodiert, wir wollen ja keine E-Mail Relayer zur Verfügung stellen. Das Secret dient dazu um die Spammer fernzuhalten, zumindestens denke ich das. Von daher sehe kein Problem das im Sourcecode zu commiten. Wenn es Probleme gibt, können wir es immer noch ändern.

url: http://www.berlin-vegan.de/cgi-bin/acra.php secret: aehiePh2Aew8atui

jmastr commented 9 years ago

Habe es mal auf nem branch laufen lassen und ich bekomme auch eine 200 als response code. Aber landet keine Mail mit der NullPointerException in unserem Verteiler. Kann einer serverseitig mal gucken, was da los ist, bitte?

jmastr commented 9 years ago

Laut http://stackoverflow.com/questions/7800492/setting-up-a-ubuntu-apache-php-machine-to-send-email muss auf einem Debian System das package 'sendmail' installiert sein, um in php die mail()-Funktion nutzen zu können. Ist das vielleicht das Problem?

smeir commented 9 years ago

Hmm, auf dem System ist schon exim installiert, würde ungern noch einen weiteren MTA installieren. Auf dem Server steht im Apache Error Log:

PHP Notice: Undefined index: key in acra.php on line 7 PHP Notice: Undefined index: token in acra.php on line 8

Irgendwas stimmt da mit den Parametern nicht. Ich kann mir das morgen mal anschauen, vielleicht muss auf php Seite noch etwas konfiguriert werden.

jmastr commented 9 years ago

Denke, das sind keine Fehlermeldungen im eigentlichen Sinne. Habe das php-file auch mal komplett ohne Parameter aufgerufen. Wie zu erwarten bekommt man dann die 403 zurück.

"Undefined index bedeutet nichts weiter, als dass der GET-Wert mit diesem index nicht definiert ist..."

Habe den Branch acra-mailer eben gepushed. Wenn man da auf "Über" klickt, wird eine NullPointerException ausgelöst. Der Branch darf natürlich so nicht integriert werden, aber mit dem kannst du testen und debuggen.

smeir commented 9 years ago

War relativ kompliziert, aber jetzt funktioniert es. Lag in der Tat an der Mailserverkonfiguration. Von daher kann das Feature jetzt eingebaut werden. :-) Es wäre aber schön, wenn der Crashreporter nur in der Release Version aktiv ist, nicht in der Debug Version.