I don’t know :) (с)
С помощью ps и pstack можно попытаться выяснить почему это происходит. На самом деле это может сработать с любой программой, не только с Asterisk-ом.
Нам понадобится утилита pstack, утилита для отслеживание системных вызовов и отображение стека процесса, если ее в системе нет, нужно установить.
Проверяем какой из тредов Asterisk-а взбесился.
# ps -LlFm -p `pidof asterisk`
В таблице в колонке “С” в % отображается нагрузка на процессор от каждого треда, LWP (LWP - light weight process number) колонка это id тредов. Теперь нам известно кто и сколько процессора кушает, теперь надо понять что он делает.
# pstack `pidof asterisk` > /tmp/asterisk.stack.txt
pstack запишет состояние стека процесса Asterisk-а в файл. После в файле можно найти интересующий нас тред по LWP.
Возможно там будут подсказки для решения проблемы или хотя бы дополнительная информация для отправки на issues.asterisk.org
source
No comments:
Post a Comment