[SR-Users] $jsonrpl(body) empty or malfunctioned during higher traffic

Sergiu Pojoga pojogas at gmail.com
Wed Oct 30 15:56:51 CET 2019


Hi Michal,

I've already encountered this same problem and got an answer from Daniel.
Check below link.

https://lists.kamailio.org/pipermail/sr-users/2019-October/107092.html

Cheers.

On Wed, Oct 30, 2019 at 9:57 AM Daniel-Constantin Mierla <miconda at gmail.com>
wrote:

> Hello,
>
> how often are you requesting the list of all dialogs (what is the n in
> that every n seconds)? Is it done using a single evapi connection, or are
> there many of them?
>
> And to clarify, is the error ("cannot serialize event") happening when
> there is no call or when there are too many? Is not clear for me given that
> you follow with what you expect to be when nobody is calling ...
>
> Cheers,
> Daniel
> On 30.10.19 14:26, Michal Škuta wrote:
>
> Hello, Kamailio community,
> we are implementing evapi communication to our Kamailio server. We have
> implemented and tested it on our testing server. Everything was working OK.
>
> Now we are testing it on our production servers with a lot more calls and
> we have some problems here.
> Every n seconds we are requesting from Kamailio list of all dialogs. And
> this list of dialogs (from jsonrpc *dlg.list*) is sent to evapi
> connection.
> Here is a snippet of our *Kamailio code*:
>
> route[CGR_DLG_LIST]
> {
>         xlog("L_INFO", "XLOG: $ci [CGR_DLG_LIST] Requested dialog list");
>         # CGRateS connection is still alive, set check to true
>         $sht(cgrconn=>check) = 1;
>         if $sht(cgrconn=>cgr) == $null {
>                 sl_send_reply("503","Charging controller unreachable");
>                 exit;
>         }
>         jsonrpc_exec('{"jsonrpc":"2.0","id":1,
> "method":"dlg.list","params":[]}');
>         xlog("L_INFO", "XLOG: $ci [CGR_DLG_LIST] Test1: $jsonrpl(body)");
>
>         evapi_relay("{\"event\":\"CGR_DLG_LIST_REPLY\",
>                         \"jsonrpl_body\":$jsonrpl(body)}");
> }
>
> During a higher number of calls Kamailio is generating ERROR messages from
> evapi module. Here is the syslog:
>
> Oct 30 12:02:15 kam-prod /opt/ipgate/kamailio/sbin/kamailio[19512]: INFO:
> <script>: XLOG: 123 [CGR_DLG_LIST] Requested dialog list
> Oct 30 12:02:15 kam-prod /opt/ipgate/kamailio/sbin/kamailio[19512]: INFO:
> <script>:
> Oct 30 12:02:15 kam-prod /opt/ipgate/kamailio/sbin/kamailio[19512]: DEBUG:
> evapi [evapi_dispatch.c:740]: _evapi_relay(): relaying event data [
> Oct 30 12:02:15 kam-prod /opt/ipgate/kamailio/sbin/kamailio[19512]: ERROR:
> evapi [evapi_dispatch.c:764]: _evapi_relay(): cannot serialize event
> Oct 30 12:02:15 kam-prod /opt/ipgate/kamailio/sbin/kamailio[19512]: ERROR:
> evapi [evapi_mod.c:265]: w_evapi_relay(): failed to relay event:
>
> *We are expecting something like this when nobody is calling*
> Oct 30 14:12:22 kam-test /opt/ipgate/kamailio/sbin/kamailio[32090]: INFO:
> <script>: XLOG: 123 [CGR_DLG_LIST] Requested dialog list
> Oct 30 14:12:22 kam-test /opt/ipgate/kamailio/sbin/kamailio[32090]: INFO:
> <script>: XLOG: 123 [CGR_DLG_LIST] Test1: {
> #011"jsonrpc":#011"2.0",
> #011"result":#011[],
> #011"id":#0111
> }
> Oct 30 14:12:22 kam-test /opt/ipgate/kamailio/sbin/kamailio[32090]: DEBUG:
> evapi [evapi_dispatch.c:740]: _evapi_relay(): relaying event data
> [{"event":"CGR_DLG_LIST_REPLY",
> #011#011#011"jsonrpl_body":{
> #011"jsonrpc":#011"2.0",
> #011"result":#011[],
> #011"id":#0111
> }}] (96)
> Oct 30 14:12:22 kam-test /opt/ipgate/kamailio/sbin/kamailio[32090]: DEBUG:
> evapi [evapi_dispatch.c:778]: _evapi_relay(): sending [0x169ff674]
> [96:{"event":"CGR_DLG_LIST_REPLY",
> #011#011#011"jsonrpl_body":{
> #011"jsonrpc":#011"2.0",
> #011"result":#011[],
> #011"id":#0111
> }},] (100)
> Oct 30 14:12:22 kam-test /opt/ipgate/kamailio/sbin/kamailio[32090]: DEBUG:
> evapi [evapi_dispatch.c:789]: _evapi_relay(): dispatching [0x169ff674]
> [96:{"event":"CGR_DLG_LIST_REPLY",
> #011#011#011"jsonrpl_body":{
> #011"jsonrpc":#011"2.0",
> #011"result":#011[],
> #011"id":#0111
> }},] (100)
>
>
> We enabled debug messages for module evapi and are trying to understand
> where is the problem. To make this work to this state we needed to increase
> the *pv_buffer* to really big size (2097152).
> It looks like $jsonrpl(body) is not ready and everything concated with it
> is not working.
>
> Any help or suggestion is welcomed.
>
> Sincerely Michal
>
>
>
>
>
> _______________________________________________
> Kamailio (SER) - Users Mailing Listsr-users at lists.kamailio.orghttps://lists.kamailio.org/cgi-bin/mailman/listinfo/sr-users
>
> --
> Daniel-Constantin Mierla -- www.asipto.comwww.twitter.com/miconda -- www.linkedin.com/in/miconda
> Kamailio World Conference - April 27-29, 2020, in Berlin -- www.kamailioworld.com
>
> _______________________________________________
> Kamailio (SER) - Users Mailing List
> sr-users at lists.kamailio.org
> https://lists.kamailio.org/cgi-bin/mailman/listinfo/sr-users
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.kamailio.org/pipermail/sr-users/attachments/20191030/d02d0b5c/attachment.html>


More information about the sr-users mailing list