How to generate coredumps with Access Gateway

  • 7011566
  • 02-Jan-2013
  • 02-Jan-2013

Environment

NetIQ Access Manager 3.2
NetIQ Access Manager 3.2 Access Gateway

Situation

There may be occasions where it is necessary to force a coredump to be generated when troubleshooting Access Gateway issues e.g. system hangs, or resource leaks. When running in debug mode, the option to force a coredump is relatively easy to perform but when running the novell-apache2 service in non debug mode, it becomes more complex.

Resolution

Core files can be generated in two ways:

1. Start /etc/init.d/novell-apache2 in debug mode using '/etc/init.d/novell-apache2 start debug'/

Whenever there is a crash, a corresponding core file will be created as /var/cache/novell-apache2/core. An administrator with access to the system can also test it by sending signal 11 to the apache2 parent process (always the last of the 3 httpd PIDs returned with a 'ps aux|grep httpd' command. For example:

kill -11 <pid of apache2 parent process>

2. Without starting the novell-apache2 in debug mode:

a) Set "ulimit -c unlimited" in "/etc/init.d/novell-apache2" startup script. There exists a reference to this command in the script already, but it is only active when running in debug mode

if [ -f ${DEBUG_ENABLED} ]; then
    ulimit -c unlimited
        APACHE_OPTIONS=" -D allowServerDebug"
fi

Simply add the 'ulimit -c unlimited' command outside of the if statement

b) Create a directory on the Access Gateway server where the core file will be located e.g.  /tmp/apache2-gdb-dump
# mkdir -p /tmp/apache2-gdb-dump

c) Set permission for writing to this directory:

# chown novlwww:www /tmp/apache2-gdb-dump
# chmod 0777 /tmp/apache2-gdb-dump

d) Add an advanced option in AG configuration in AC as follows:
CoreDumpDirectory /tmp/apache2-gdb-dump

e) Apply changes to Access Gateway so that it is updated with the Advanced Option. Whenever there is a crash, core file will be created with the name /tmp/apache2-gdb-dump/core.

You can also test it by sending signal 11 to apache2 parent process. For eg: kill -11 <pid of apache2 parent process>