Пожалуйста, войдите здесь. Часто задаваемые вопросы О нас
Задайте Ваш вопрос

Ошибки Res_timing_dahdi при использовании AJAM интерфейса.

0

Столкнулись с такой проблемой, у одного из клиентов. Открываем AJAM интерфейс и при помощи браузера отправляем несколько запросов, сразу в консоли начинают сыпаться ошибки Error Restimingdahdi.c:89 Появляются хрипы и задержки.

Информация по железу такая: Dell PE R710 (2)X5650, 16GB, (2)300GB SAS 6Gbps 15k HDD

Версия астериска: 1.8.10.1

Ubuntu server (ядро 3.0.0.17), dahdi 2.6.1

Плата е1 Openvox DE210E

Одновременных разговоров 24-35 шт.

Абонентов 55 шт.

Кто нибудь сталкивался? Подскажите в какую сторону копать?

UPD: ERROR[4369] restimingtimerfd.c: Call to timerfd_gettime() error: Bad file descriptor

ERROR[24251] restimingdahdi.c: Failed to configure DAHDI timing fd for 0 sample timer ticks

удалить закрыть спам изменить тег редактировать

спросил 2012-05-16 16:01:29 +0400

jorikfon Gravatar jorikfon flag of Russian Federation
130 9 10
http://www.telefon1c.ru/

обновил 2012-05-17 14:04:22 +0400

Comments

Какие запросы отправляете-то?

switch ( 2012-05-16 20:35:46 +0400 )редактировать

Саначала команду Login

Потом 5 раз подряд WaitEvent

jorikfon ( 2012-05-17 09:09:02 +0400 )редактировать

а зачем 5 раз?

meral ( 2012-05-17 10:38:41 +0400 )редактировать

Принцип работы WaitEvent, он ждет появления сообщений в AMI интерфейсе и после этого выводит их в окно браузера. Чтобы получить следующую порцию сообщений, нужно опять вызывать команду WaitEvent. У команды есть параметр Таймаут, который прерывает выполнение команды, если в течение заданного времени не поступило сообщений. Т.е. чтобы постоянно читать сообщения AMI нужно в цикле долбиться в AJAM интерфейс командой WaitEvent.

jorikfon ( 2012-05-17 10:58:24 +0400 )редактировать

неа. можно таймаут большой поставить. вообще это баговый инетрефейс. почти всегда ефективнее написать на сервере парсер и спрашивать уже результаты у базы.

meral ( 2012-05-17 11:50:02 +0400 )редактировать

2 Ответа

1

Стоит попробовать заменить модуль тайминга на restimingtimerfd. Чтобы понять связь между обработкой AJAM запроса и модулем таймера - нужно смотреть в исходник

ссылка удалить спам редактировать

ответил 2012-05-17 07:03:49 +0400

igorg Gravatar igorg flag of Russian Federation
2244 3 7 40
http://igorg.ru/

Comments

У нас вначале был - restimingtimerfd.so

Затем воткнули - restimingdahdi.so

Результат тот же - виснет.

jorikfon ( 2012-05-17 10:38:54 +0400 )редактировать

Алекс Литницкий посоветовал vmstat 1 до и в момент возникновения проблемы, отправил клиенту, ждем результат.

jorikfon ( 2012-05-17 11:02:44 +0400 )редактировать

procs -----------memory---------- ---swap-- -----io---- -system-- ----cpu----

r b swpd free buff cache si so bi bo in cs us sy id wa

0 0 0 8657880 202336 7020096 0 0 3 12 30 34 0 0 99 0

0 0 0 8657976 202336 7020224 0 0 0 36 2512 2171 1 1 99 0

0 0 0 8658016 202336 7020320 0 0 0 548 2363 2205 1 1 99 0

0 0 0 8657892 202336 7020384 0 0 0 52 2346 2184 1 0 99 0

0 0 0 8657976 202336 7020448 0 0 0 0 2321 2169 0 0 99 0

0 0 0 8657736 202336 7020800 0 0 0 0 2283 2149 0 0 100 0

Результат что до падения, что после без особой разницы....

jorikfon ( 2012-05-17 13:46:28 +0400 )редактировать

vmstat показал нагрузку близкую к нулевой. Ждем обновления клиента до 1.8.12...

asteriskguru ( 2012-05-17 13:49:53 +0400 )редактировать
0

В моменты, когда система нагружена, и клиент в цикле присылает WaitEventы, Астер начинает дымиться, top показывает по 200% - 300%, vmstat пишет:

procs -----------memory---------- ---swap-- -----io---- -system-- ----cpu----
 r  b   swpd   free   buff  cache   si   so    bi    bo   in   cs us sy id wa
 2  0    116 185844  13020 8619900    0    0   116    67   71  401  1  1 98  0
 3  0    116 162088  13020 8644648    0    0     0     0 25278 82593 26 13 61  0
 0  1    116 148932  13028 8657204    0    0     8 134412 64205 237816 18 14 62  6
 5  0    116 165316  13028 8640104    0    0     0 80784 17939 51054  9  7 75  8
 2  0    116 164744  13028 8640388    0    0     0     0 30834 105670 26 16 57  0
 8  0    116 166336  13044 8637992    0    0   128   136 48665 159770 27 16 56  0

Что интересно, так это когда клиент не шлет WaitEvent, астер спокойно работает на 15% - 20% при том же объеме звонков. Видимо это команда заставляет Астер выполнять дополнительную логику, например генерить XML. Используется запрос:

http://.../asterisk/mxml?Action=WaitEvent&Timeout=3
ссылка удалить спам редактировать

ответил 2012-05-29 17:34:00 +0400

asteriskguru Gravatar asteriskguru
1150 4 5 20
http://www.asteriskguru.r...

Comments

нет. ну я вам когда сказал что это баговое все? пасивно слушайте и раздавайте.

meral ( 2012-05-29 20:23:35 +0400 )редактировать

Насколько я понял клиент нестандартый, а нечто вроде коллцентра генерященго огромное количество звонков с помощью call файлов. Попробовал сгенерировать больщую нагрузку при помощи sipp, в итоге ajam добавляет 3-6% нагрузки, но ничего не дымится...

jorikfon ( 2012-07-02 22:59:01 +0400 )редактировать

Ваш ответ

Please start posting your answer anonymously - your answer will be saved within the current session and published after you log in or create a new account. Please try to give a substantial answer, for discussions, please use comments and please do remember to vote (after you log in)!
[скрыть предварительный просмотр]

Закладки и информация

Добавить закладку

подписаться на rss ленту новостей

Статистика

Задан: 2012-05-16 16:01:29 +0400

Просмотрен: 280 раз

Обновлен: May 29 '12

Проект компании "АТС Дизайн"
Asterisk® и Digium® являются зарегистрированными торговыми марками компании Digium, Inc., США.
IP АТС Asterisk распространяется под лицензией GNU GPL.