Ошибки запросов - куда смотреть?

alexayy

New Member
19:55:03,228 INFO SipUserAgentListener - EventScannerThread-29 Requested by uri sip:user-803931998@51.250.81.250:30018 SipUserAgent SIP UA: login: user assignedPort: 30018 listeningPort: 30018
19:55:03,228 INFO WCS4CallbackHandler - EventScannerThread-29 notifyBalance user@u.mangosip.ru
19:55:23,699 WARN WSServerHandler - pool-30-thread-1 Close channel [id: 0x3f183264, /185.114.175.11:43204 => /10.210.0.22:8443] because: org.jboss.netty.handler.timeout.ReadTimeoutException 'null'
19:55:40,968 ERROR HLSServerHandler - HLS-HTTPS-pool-47-thread-141 HTTP error
java.lang.ArrayIndexOutOfBoundsException: Index -2 out of bounds for length 0
at com.flashphoner.server.I.B.messageReceived(Unknown Source)
at org.jboss.netty.handler.codec.http.HttpContentEncoder.messageReceived(Unknown Source)
at org.jboss.netty.handler.codec.http.HttpChunkAggregator.messageReceived(Unknown Source)
at org.jboss.netty.channel.Channels.fireMessageReceived(Unknown Source)
at org.jboss.netty.handler.codec.frame.FrameDecoder.unfoldAndFireMessageReceived(Unknown Source)
at org.jboss.netty.handler.codec.replay.ReplayingDecoder.callDecode(Unknown Source)
at org.jboss.netty.handler.codec.replay.ReplayingDecoder.messageReceived(Unknown Source)
at org.jboss.netty.channel.Channels.fireMessageReceived(Unknown Source)
at org.jboss.netty.handler.codec.frame.FrameDecoder.unfoldAndFireMessageReceived(Unknown Source)
at org.jboss.netty.handler.codec.frame.FrameDecoder.callDecode(Unknown Source)
at org.jboss.netty.handler.codec.frame.FrameDecoder.messageReceived(Unknown Source)
at org.jboss.netty.channel.Channels.fireMessageReceived(Unknown Source)
at org.jboss.netty.channel.Channels.fireMessageReceived(Unknown Source)
at org.jboss.netty.channel.socket.nio.NioWorker.read(Unknown Source)
at org.jboss.netty.channel.socket.nio.AbstractNioWorker.processSelectedKeys(Unknown Source)
at org.jboss.netty.channel.socket.nio.DeadlockAwareNioWorker.run(Unknown Source)
at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1128)
at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:628)
at java.base/java.lang.Thread.run(Thread.java:829)
19:55:44,399 WARN WSServerHandler - pool-30-thread-1 Close channel [id: 0x40080abd, /198.235.24.231:49411 => /10.210.0.22:8443] because: org.jboss.netty.handler.timeout.ReadTimeoutException 'null'
19:56:04,799 WARN WSServerHandler - pool-30-thread-1 Close channel [id: 0x680a2807, /104.152.52.126:45105 => /10.210.0.22:8443] because: org.jboss.netty.handler.timeout.ReadTimeoutException 'null'
19:56:20,383 ERROR HLSServerHandler - HLS-HTTPS-pool-47-thread-141 HTTP error
java.lang.IllegalArgumentException: empty text
at org.jboss.netty.handler.codec.http.HttpVersion.<init>(Unknown Source)
at org.jboss.netty.handler.codec.http.HttpVersion.valueOf(Unknown Source)
at org.jboss.netty.handler.codec.http.HttpRequestDecoder.createMessage(Unknown Source)
at org.jboss.netty.handler.codec.http.HttpMessageDecoder.decode(Unknown Source)
at org.jboss.netty.handler.codec.http.HttpMessageDecoder.decode(Unknown Source)
at org.jboss.netty.handler.codec.replay.ReplayingDecoder.callDecode(Unknown Source)
at org.jboss.netty.handler.codec.replay.ReplayingDecoder.messageReceived(Unknown Source)
at org.jboss.netty.channel.Channels.fireMessageReceived(Unknown Source)
at org.jboss.netty.handler.codec.frame.FrameDecoder.unfoldAndFireMessageReceived(Unknown Source)
at org.jboss.netty.handler.codec.frame.FrameDecoder.callDecode(Unknown Source)
at org.jboss.netty.handler.codec.frame.FrameDecoder.messageReceived(Unknown Source)
at org.jboss.netty.channel.Channels.fireMessageReceived(Unknown Source)
at org.jboss.netty.channel.Channels.fireMessageReceived(Unknown Source)
at org.jboss.netty.channel.socket.nio.NioWorker.read(Unknown Source)
at org.jboss.netty.channel.socket.nio.AbstractNioWorker.processSelectedKeys(Unknown Source)
at org.jboss.netty.channel.socket.nio.DeadlockAwareNioWorker.run(Unknown Source)
at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1128)
at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:628)
at java.base/java.lang.Thread.run(Thread.java:829)
19:56:41,299 WARN WSServerHandler - pool-30-thread-1 Close channel [id: 0x555291d9, /198.235.24.47:50193 => /10.210.0.22:8443] because: org.jboss.netty.handler.timeout.ReadTimeoutException 'null'
19:56:50,799 WARN WSServerHandler - pool-30-thread-1 Close channel [id: 0x6e792187, /104.152.52.85:53572 => /10.210.0.22:8443] because: org.jboss.netty.handler.timeout.ReadTimeoutException 'null'
19:57:23,699 WARN WSServerHandler - pool-30-thread-1 Close channel [id: 0x3f183264, /185.114.175.11:43204 => /10.210.0.22:8443] because: org.jboss.netty.handler.timeout.ReadTimeoutException 'null'
19:57:42,145 ERROR HLSServerHandler - HLS-HTTPS-pool-47-thread-141 HTTP error
java.lang.IllegalArgumentException: empty text
 
Last edited:

Max

Administrator
Staff member
Здравствуйте.

Выглядит как сетевая проблема.

Устройство по адресу 198.235.24.47
не может установить вебсокет соединение с хостом 10.210.0.22:8443

1. Зайти в демо интерфейс и убедиться, что соединение устанавливается.

1702646363835.png

2. Зайти в SIP Demo - интерфейс, убедиться, что соединение устанавливается и регистрация SIP проходит.

1702646446707.png
 

Max

Administrator
Staff member
Если соединение не устанавливается, попробуйте открыть SSH тунель к серверу, например:

SSH localhost:18443 > 10.210.0.22:8443 и установить соединение через этот тунель.
Code:
wss://localhost:18443
Если соединение устанавливается через тунель, то проблема может быть в файрвол или NAT сервера.

Если соединение все равно не устанавливается, попробуйте перезапустить WCS сервер.
Пришлите нам SSH доступы для проверки через эту форму.
 

alexayy

New Member
Спасибо, проверили - соединение устанавливается.

Так же встречаем такие типы ошибок - пример:

07:03:09,520 ERROR HttpServerHandler - HTTPS-pool-5-thread-28 HTTP error


javax.net.ssl.SSLException: not an SSL/TLS record: 0300002b26e00000000000436f6f6b69653a206d737473686173683d68656c6c6f0d0a0100080003000000


at org.jboss.netty.handler.ssl.SslHandler.decode(Unknown Source)


at org.jboss.netty.handler.codec.frame.FrameDecoder.callDecode(Unknown Source)


at org.jboss.netty.handler.codec.frame.FrameDecoder.messageReceived(Unknown Source)


at org.jboss.netty.channel.Channels.fireMessageReceived(Unknown Source)


at org.jboss.netty.channel.Channels.fireMessageReceived(Unknown Source)


at org.jboss.netty.channel.socket.nio.NioWorker.read(Unknown Source)


at org.jboss.netty.channel.socket.nio.AbstractNioWorker.processSelectedKeys(Unknown Source)


at org.jboss.netty.channel.socket.nio.DeadlockAwareNioWorker.run(Unknown Source)


at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1128)


at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:628)


at java.base/java.lang.Thread.run(Thread.java:829)


07:03:11,468 INFO WSServerHandler - WSS-pool-29-thread-167 Orgign: https://crm.com


07:03:11,520 DEBUG sipMessages - UDPMessageChannelThread-30010-107122


Пример


ControlPacketDecoder - RTP-pool-32-thread-6644 Invalid RTCP packet received: total length should be multiple of 4 but is 54
ControlPacketDecoder - RTP-pool-32-thread-6644 Exception caught while decoding RTCP packet, Invalid RTCP packet length: expecting multiple of 4 and got 54
 

Max

Administrator
Staff member
07:03:09,520 ERROR HttpServerHandler - HTTPS-pool-5-thread-28 HTTP error
Эта ошибка означает, что кто-то пытался зайти на HTTPS порт или WSS порт сервера, используя HTTP/WS. Можете ее игнорировать, если это не ваши клиенты
ControlPacketDecoder - RTP-pool-32-thread-6644 Invalid RTCP packet received: total length should be multiple of 4 but is 54
ControlPacketDecoder - RTP-pool-32-thread-6644 Exception caught while decoding RTCP packet, Invalid RTCP packet length: expecting multiple of 4 and got 54
Это может означать какие-то сетевые проблемы между WebRTC клиентом и сервером: контрольное сообщение было получено не полностью. Чтобы исключить потери, можно использовать TCP транспорт для WebRTC: Публикация и воспроизведение потока по WebRTC через TCP
 

alexayy

New Member
Эта ошибка означает, что кто-то пытался зайти на HTTPS порт или WSS порт сервера, используя HTTP/WS. Можете ее игнорировать, если это не ваши клиенты

Это может означать какие-то сетевые проблемы между WebRTC клиентом и сервером: контрольное сообщение было получено не полностью. Чтобы исключить потери, можно использовать TCP транспорт для WebRTC: Публикация и воспроизведение потока по WebRTC через TCP
Мы недавно по вашей рекомендации отключали tcp transport из-за проблем со связью
ice_tcp_nio=false
ice_tcp_transport=false
если это имеется ввиду
 

Max

Administrator
Staff member
Мы недавно по вашей рекомендации отключали tcp transport из-за проблем со связью
Обычно мы, наоборот, советуем включить TCP транспорт в случае потерь. Если использование UDP не приводит к явным проблемам, можно оставаться на этом транспорте, в этом случае ошибки в логах, свящзанные с получением битых пакетов, следует игнорировать.
 

alexayy

New Member
Добрый день!
В логах вашего приложения есть возможность зафиксировать re-invite? Мы хотим предоставить провайдеру примеры проблемных звонков с re-invite, пока находил только invite или надо пользоваться сниффером и смотреть второй запрос INVITE в сессии?
 

Max

Administrator
Staff member
Здравствуйте.

Провайдер скорее всего запросит именно pcap дампы.
Вряд ли наши логи будут для него полезны.

Code:
tcpdump port 5060
Достаточно снять дамп по порту 5060 и убедиться что в этом дамп попали INVITE - запросы.


1704975189378.png


Если нужны все же логи, тогда в логах можно поискать такие паттерны:

Code:
<-- INVITE
Стрелка влево означает входящий INVITE запрос.

В случае re-INVITE, у него будет такой же callID как у первого INVITE и Cseq будет 2 или больше

Пример отправки re-INVITE из эмулятора sipp.
В этом примере SDP не пустое, но вполне может быть пустым.

1704975598990.png
 

alexayy

New Member
Спасибо за ответ, я так понял то что надо

INVITE sip:79306.....08@mangosip.ru SIP/2.0
Call-ID: e7e1030a-6cb1-ee11-838c-f6320dc260df
CSeq: 2 INVITE
From: "elena.primer" <sip:elena.primer@mangosip.ru>;tag=fb029fa7
To: <sip:79306....08@mangosip.ru>
Via: SIP/2.0/UDP 51.250..25:30009;branch=z9hG4bK60649754d9d5748aa156edab752279be
Max-Forwards: 70
Contact: <sip:elena.perimer-7147@51.250..25:30009>;expires=3600
Supported: timer
Min-SE: 90
Session-Expires: 1800;refresher=uac
User-Agent: WebRTC
P-Preferred-Identity: <sip:elena.primer@mangosip.ru>
Content-Type: application/sdp
17:00:14 UTC

INVITE sip:79869.....@mangosip.ru SIP/2.0
Call-ID: 30019e03-6cb1-ee11-838c-f6320dc260df
CSeq: 2 INVITE
From: "user108" <sip:user123@mangosip.ru>;tag=aa0a2f75
To: <sip:79869.....@mangosip.ru>
Via: SIP/2.0/UDP 51.250.81.250:30009;branch=z9hG4bK35d2f87851ed052c72572acf9ada049c
Max-Forwards: 70
Contact: <sip:user123-71473@51.250..25:30009>;expires=3600
Supported: timer
Min-SE: 90
Session-Expires: 1800;refresher=uac
User-Agent: WebRTC
P-Preferred-Identity: <sip:user123@mangosip.ru>
Content-Type: application/sdp
17:00:06 UTC
 
Top