Difference between revisions of "389"

From A-Eskwiki
Jump to: navigation, search
Line 1: Line 1:
{{DISPLAYTITLE:389 Directory Server}}
 
 
== Debugging ==
 
== Debugging ==
  

Revision as of 16:57, 23 June 2015

Debugging

Er gebeuren af en toe gekke dingen met dirsrv. Om die gekke dingen te kunnen debuggen moet je de volgende dingen doen:

  • Installeer debuginfo: debuginfo-install 389-ds-base
  • Zorg ervoor dat suid-binaries een coredump mogen doen: sysctl -w fs.suid_dumpable=1
  • Voeg LimitCORE=infinity toe aan /etc/sysconfig/dirsrv.systemd en doe een systemctl daemon-reload
  • Herstart dirsrv: systemctl restart dirsrv.target

Als er nu problemen optreden waarbij 389 crasht wordt er een coredump gegenereerd in /var/log/dirsrv/slapd-$INSTANCENAME/core.$PID. Coredumps zijn leuk, maar zonder gdb heb je er vrij weinig aan. Gebruik de volgende commando's om (bruikbare) informatie te genereren uit de dump:

Beknopte stacktrace

gdb -ex 'set print frame-arguments' -ex 'set confirm off' -ex 'set pagination off' -ex 'thread apply all bt'\
-ex 'quit' /usr/sbin/ns-slapd /var/log/dirsrv/slapd-INSTANCENAME/core.PID > stacktrace.`date +%s`.txt 2>&1

Complete stacktrace

gdb -ex 'set print frame-arguments' -ex 'set confirm off' -ex 'set pagination off' -ex 'thread apply all bt full'\
-ex 'quit' /usr/sbin/ns-slapd /var/log/dirsrv/slapd-INSTANCENAME/core.PID > stacktrace.`date +%s`.txt 2>&1