Sie sind nicht angemeldet.

Lieber Besucher, herzlich willkommen bei: sourceserver.info. Falls dies Ihr erster Besuch auf dieser Seite ist, lesen Sie sich bitte die Hilfe durch. Dort wird Ihnen die Bedienung dieser Seite näher erläutert. Darüber hinaus sollten Sie sich registrieren, um alle Funktionen dieser Seite nutzen zu können. Benutzen Sie das Registrierungsformular, um sich zu registrieren oder informieren Sie sich ausführlich über den Registrierungsvorgang. Falls Sie sich bereits zu einem früheren Zeitpunkt registriert haben, können Sie sich hier anmelden.

rain

Super Moderator

  • »rain« ist der Autor dieses Themas

Beiträge: 1 410

Wohnort: Lutherstadt Wittenberg

Beruf: Anlagenmechaniker

Rootserver vorhanden: Ja

  • Nachricht senden

1

Samstag, 7. November 2009, 10:03

debug files auslesen

Morgen,

Ich wollte gern mal meine coreXXXX ( debug files ) auswerten aber irgendwie find ich nix brauchbares wie ich sie öffnen und lesen kann :(!





DeaD_EyE

Administrator

Beiträge: 3 980

Wohnort: Hagen

Beruf: Mechatroniker (didaktische Systeme)

Rootserver vorhanden: Nein

  • Nachricht senden

2

Samstag, 7. November 2009, 12:23

Re: debug files auslesen

Mit gdb kann man das.
Wenn es noch nicht installiert ist, mit apt-get install gdb installieren.
Danach in das Verzeichnis des Servers wechseln und gdb Binary_des_Servers corexxxx aufrufen.

Die Ausgabe könnte dann z.B. so aussehen:

Ausgabe

warning: Can't read pathname for load map: Input/output error.
Reading symbols from /emul/ia32-linux/lib/libm.so.6...done.
Loaded symbols for /lib32/libm.so.6
Reading symbols from /emul/ia32-linux/lib/libdl.so.2...done.
Loaded symbols for /lib32/libdl.so.2
Reading symbols from /emul/ia32-linux/lib/libc.so.6...done.
Loaded symbols for /lib32/libc.so.6
Reading symbols from /lib/ld-linux.so.2...done.
Loaded symbols for /lib/ld-linux.so.2
Reading symbols from /home/gs/server/pub_css2/srcds/bin/tier0_i486.so...done.
Loaded symbols for bin/tier0_i486.so
Reading symbols from /emul/ia32-linux/lib/libpthread.so.0...done.
Loaded symbols for /lib32/libpthread.so.0

warning: Couldn't recognize general-purpose registers in core file.
Core was generated by `/home/gs/server/pub_css2/srcds/srcds_i686 -debug -port 33000 -ip 85.14.217.170 -'.
[New process 2799]

warning: Couldn't recognize general-purpose registers in core file.
#0 0x00000000 in ?? ()
(gdb) bt
#0 0x00000000 in ?? ()
(gdb)


In diesem Fall fehlte einfach das Verzeichnis Maps. Die PRobleme können natürlich auch tiefgreifender mit irgendwelchen Libs oder Plugins zusammenhängen.

Es gibt bei gdb bestimmte Bewfehle, die im Programm aufgerufen werden können, wie z.B. backtrace, bt usw.

Im Forum von alliedmodders gibt es dazu noch eine ausführlichere Erklärung. Leider ist das Debugen recht kompliziert.

rain

Super Moderator

  • »rain« ist der Autor dieses Themas

Beiträge: 1 410

Wohnort: Lutherstadt Wittenberg

Beruf: Anlagenmechaniker

Rootserver vorhanden: Ja

  • Nachricht senden

3

Samstag, 7. November 2009, 14:31

Re: debug files auslesen

hmm also ich bekomme diesen Output nur weiss ich nicht grad so richtig was ich damit anfangen soll

Quellcode

1
2
3
4
5
Failed to read a valid object file image from memory.
Core was generated by `./srcds_amd -game cstrike +map de_dust +maxplayers 32 -ip 85.25.143.156 +port 2'.
Program terminated with signal 11, Segmentation fault.
#0  0x00001f36 in ?? ()
(gdb)





DeaD_EyE

Administrator

Beiträge: 3 980

Wohnort: Hagen

Beruf: Mechatroniker (didaktische Systeme)

Rootserver vorhanden: Nein

  • Nachricht senden

4

Donnerstag, 12. November 2009, 23:35

Re: debug files auslesen

TempletonPeck hat mich darauf gebracht.
Kopier maldie srcds_run nach srcds_debug
Danach öffne die Datei mit einem Editor (nicht Notepad) und such nach folgendem Code:

Quellcode

1
2
3
                if test "unlimited" != `ulimit -c` && test "`ulimit -c`" -eq 0 ; then
                        ulimit -c 2000
                fi


Den Wert von ulimit -c 2000 kannst du entweder erhöhen oder die drei Zeilen komplett löschen.
c = core file size (blocks)

Danach startest du den Server einfach mit mit srcds_debug (-debug nicht vergessen).

rain

Super Moderator

  • »rain« ist der Autor dieses Themas

Beiträge: 1 410

Wohnort: Lutherstadt Wittenberg

Beruf: Anlagenmechaniker

Rootserver vorhanden: Ja

  • Nachricht senden

5

Freitag, 13. November 2009, 23:06

Re: debug files auslesen

okiiiii hab ich gemacht aber was genau bewirkt das?





6

Freitag, 13. November 2009, 23:10

Re: debug files auslesen

das die core.* Dateien größer werden und evtl. mehr Informationen beim debuggen ausgegeben werden.
My Weapons are so loud, i can't hear you!

aimroyale.de - die Community

7

Samstag, 14. November 2009, 07:30

Re: debug files auslesen

ich klinke mich hier mal ein, weil sich das sehr interessant anhört :) .

ich habe bisher immer nur in die debug.log geschaut um den crashs nachzugehen.

das heißt ich finde in diesen dateien detailliertere informationen über die ursache von problemen?

was ist mir srcds_debug gemeint, denn ich finde diese datei nirgends?

oder meinte dead_eye damit srcds_run als "srcds_debug" umbenannt separat zum debuggen zu kopieren? (versteht ihr wie ich das meine ;D ) und den server dann mit den bearbeiteten srcd_debug alias srcds_run zu starten :)

(will nur wissen ob ich verstanden habe :) )


edit: habe übrigens bei unserem l4d server den selben fehler :

Quellcode

1
Program terminated with signal 11, Segmentation fault.

einer einer anderen coredatei steht

Quellcode

1
Program terminated with signal 6, aborted


in der ersten Zeile steht je

Quellcode

1
Failed to read a valid object file image from memory.
Für LEute die nicht verlieren können, cheatet die ganze Welt!

=Freie Allianz kranker Krieger= Onlinefungaming seit 1999

rain

Super Moderator

  • »rain« ist der Autor dieses Themas

Beiträge: 1 410

Wohnort: Lutherstadt Wittenberg

Beruf: Anlagenmechaniker

Rootserver vorhanden: Ja

  • Nachricht senden

8

Samstag, 14. November 2009, 11:35

Re: debug files auslesen

Zitat von »"FAKK|biggiman"«



oder meinte dead_eye damit srcds_run als "srcds_debug" umbenannt separat zum debuggen zu kopieren? (versteht ihr wie ich das meine ;D ) und den server dann mit den bearbeiteten srcd_debug alias srcds_run zu starten :)

(will nur wissen ob ich verstanden habe :) )

[/code]


Genau das meinte Dead_Eye :)

Ich hab die wert von 2000 auf 20000 mal hochgenommen und siehe da die core.XXXX wird auch gleich viel größer aber irgendwie bekomm ich immer noch den gleichen output.

Quellcode

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
debian.twb:~/cssXXXX$ gdb srcds core.23147
gdb srcds core.23147
GNU gdb 6.4.90-debian
Copyright (C) 2006 Free Software Foundation, Inc.
GDB is free software, covered by the GNU General Public License, and you are
welcome to change it and/or distribute copies of it under certain conditions.
Type "show copying" to see the conditions.
There is absolutely no warranty for GDB.  Type "show warranty" for details.
This GDB was configured as "i486-linux-gnu"...srcds: Datei oder Verzeichnis nicht gefunden.

Failed to read a valid object file image from memory.
Core was generated by `./srcds_amd -game cstrike +map gg_fy_funtimes +maxplayers 36 -ip 85.25.143.156'.
Program terminated with signal 11, Segmentation fault.
#0  0x00000000 in ?? ()
(gdb)





DeaD_EyE

Administrator

Beiträge: 3 980

Wohnort: Hagen

Beruf: Mechatroniker (didaktische Systeme)

Rootserver vorhanden: Nein

  • Nachricht senden

9

Samstag, 14. November 2009, 12:24

Re: debug files auslesen

Ersetz das mal durch 0 oder entferne den Block if ... fi komplett aus der srcds_debug. Das sieht so aus, als wenn immer noch etwas vom Abbild fehlt. Wie groß ist die Datei denn genau? Der Befehl du -h core.* zeigt die Größen an.