[Sysadmins] включить coredump для httpd2
Sergey
a_s_y на sama.ru
Ср Июн 18 10:52:09 MSK 2014
On Monday 16 June 2014, Sergey wrote:
> coredump надо получить от httpd2. В каком месте и что
> применяется при запуске процессов самого Апаче ?
Качественно закопано... В apachectl2 есть такой код:
start()
{
initlog $INITLOG_ARGS -n "$BASENAME" -c "limited -n $BASENAME -- $BINARY -k start $OPTIONS $DEFINE" || :
poststart
RETVAL=$?
return $RETVAL
}
man limited как бы есть, есть пример в виде /etc/sysconfig/limits,
и он же уже рабочий конфиг, а там - RLIMIT_SOFT_CORE=0.
Создаём /etc/sysconfig/limits.d/httpd2:
RLIMIT_SOFT_CORE=10000000
RLIMIT_HARD_CORE=10000000
Только это ещё не всё. limited выбирает файл в limits.d в соответствии
с -n $BASENAME, а оно определяется в apachectl2 посредством
name=`echo $HTTPD | sed -r '\@^.*/[^/[:space:]]+[[:space:]]*$@s@^.*/([^/[:space:]]+)[[:space:]]*$@\1@'`
BINARY=/usr/sbin/$name
BASENAME="$(basename "$BINARY")"
В общем, в limits.d надо симлинков насоздавать на httpd2, в зависимости
от того, какие apache2-httpd-* установлены:
httpd2
httpd2.prefork
httpd2.worker
--
С уважением, Сергей
a_s_y на sama.ru
Подробная информация о списке рассылки Sysadmins