strace нескольких процессов
Часто работающий процесс представляет собой связку процессов и мониторить их необходимо все, т.к. заранее неизвестно, каким их процессов будет отработан наш запрос. На этот случай strace умеет принимать набор pid ов процессов, на каждый процесс свой аргумент -p
Получаем список всех процессов по имени:
Собираем список аргументов:
Вызываем strace:
На CentOS имя процесса другое:
Для трейса php-cgi процессов команда будет следующая:
А вот боеле гибкий вариант для выборки процессов по регулярному выражению:
А для Nginx:
Получаем список всех процессов по имени:
pidof apache2
Собираем список аргументов:
pidof apache2 | sed 's/\([0-9]*\)/\-p \1/g'
Вызываем strace:
strace -s 1024 -f $(pidof apache2 | sed 's/\([0-9]*\)/\-p \1/g')
На CentOS имя процесса другое:
strace -s 1024 -f $(pidof httpd | sed 's/\([0-9]*\)/\-p \1/g')
Для трейса php-cgi процессов команда будет следующая:
strace -s 1024 -f $(pidof php5-cgi | sed 's/\([0-9]*\)/\-p \1/g')
А вот боеле гибкий вариант для выборки процессов по регулярному выражению:
strace -s 1024 -f $(pgrep php5-fastcgi | sed 's/\([0-9]*\)/\-p \1/g')
А для Nginx:
strace -s 1024 -f $(pidof nginx | sed 's/\([0-9]*\)/\-p \1/g')
17.02.2015, 19:40 -
Категория: Статьи » Администрирование