Hello Stefan,
On 3/14/11 11:03 AM, Stefan Tiedje wrote:
> Thanks for the answer.
> Maybe I have some older versions of the OPENSER-MIB and the other
> related MIB's since I could not find the counter you pointed at. I'm
> using a MIB browser for reading the MIB's.
> Is the suggested counter "expired dialogs" added in a specific release
> of Kamailio? Which? We use Kamailio 3.0.2.
I used Kamailio and recommend using it sine it has the latest commits
for stability.
However, what I wrote before is pretty much not related to the version.
There is a counter that tracks the processed dialogs, but seems it is
not exported by default through snmpstats module. The statistics counter
is named "processed_dialogs", implemented by dialog module.
You can dump all internal statistics through kamctl or via xmlrpc
command, but probably to export it through snmpstats you may need to
extend the mibs and the code of the module.
I just grepped the sources of snmpstats module to see what dialog
statistics it is exporting:
$ grep -n _dialogs modules_k/snmpstats/* | grep get_statistic
modules_k/snmpstats/alarm_checks.c:83: num_dialogs =
get_statistic("active_dialogs");
modules_k/snmpstats/snmpObjects.c:404: int result =
get_statistic("active_dialogs");
modules_k/snmpstats/snmpObjects.c:424:
get_statistic("active_dialogs") -
modules_k/snmpstats/snmpObjects.c:425:
get_statistic("early_dialogs");
modules_k/snmpstats/snmpObjects.c:443: int result =
get_statistic("early_dialogs");
modules_k/snmpstats/snmpObjects.c:459: int result =
get_statistic("failed_dialogs");
modules_k/snmpstats/snmpObjects.c:508: int num_dialogs =
get_statistic("active_dialogs");
Perhaps when the snmpstats was developed the dialog module didn't export
the statistics counter of "processed_dialogs" and then it was not updated.
Now, what I tried to say is that if the "processed_dialogs" counter is
not available through snmpstats (and it is not now after grepping the
sources) you can get its value from another application through "kamctl
get_statistics all" or XMLRPC command for all of the existing kamailio
releases. Upcoming one we will look to implement the export through
snmpstats as well. If you have time to do it and send us a patch, we
will gladly commit it to source tree in our GIT repository.
Cheers,
Daniel
> Do you have the MIB name for the "expired dialogs" counter. I will
> look for that in my version of OPENSER MIBS.
> Important, do you have a link to where MIB files can be downloaded for
> Kamailio 3.0.2?
> Below follows an excerp from one of the MIB's. Is it old, I don't know?
>
> -- ***********************************************************************
>
> -- OPENSER-MIB: OPENSER MIB
>
> --
>
> -- Date of Creation: Januay 2006
>
> --
>
> -- This MIB provides information related to the OpenSER SIP Router.
>
> --
>
> -- Copyright (c) The Internet Society (2006)
>
> -- Ammendments (c) Soma Networks, Inc. (2006)
>
> --
>
> -- All rights reserved.
>
> -- *****************************************************************
>
> /Stefan
>
> ------------------------------------------------------------------------
> *From:* Daniel-Constantin Mierla [mailto:miconda@gmail.com]
> *Sent:* den 14 mars 2011 10:16
> *To:* Stefan Tiedje
> *Cc:* sr-users(a)lists.sip-router.org
> *Subject:* Re: [SR-Users] OPENSER MIB
>
> Hello,
>
> On 3/14/11 9:42 AM, Stefan Tiedje wrote:
>> Hi,
>> In the Kamailio OPENSER-MIB there is the counter
>> "openserTotalNumFailedDialogSetups". This is a Counter32.
>> The description is:
>> "The total number of calls that failed with an error. The
>> following codes define a failed call:"
>> *Question:*
>>
>> * I'm looking for the corresponding counter to
>> "openserTotalNumFailedDialogSetups" who counts successful
>> Dialog setups of Counter32 type. Does it exist?
>> * If not, does it exist a work around?
>> * Where in the code can the new suggested counter be added?
>> * Something else????
>>
>
> the dialog module counts the number of processed dialogs, see:
> http://kamailio.org/docs/modules/stable/modules_k/dialog.html#id2966360
>
> There is no counter currently inside dialog module exporting exactly
> the number of successfully setup dialogs, it should not be hard to do
> it, though. Using the above and the number of failed and expired
> dialogs, you can actually get the number of successful dialogs.
>
> Dialog module being the one that tracks SIP dialogs, therefore being
> able to count them, now I don't know if snmpstats module exports all
> the counters from dialog module. I setup snmpstats just few weeks ago
> and works perfect on Ubuntu/Debian servers, but I had no need to check
> dialog module counters.
>
> Note that you can get the list of all internal statistics via kamctl:
> - kamctl fifo get_statistics all
>
> Or via XMLRPC if you need them remotely in another application.
>
> Another option is to define your statistics with statistics module.
> Knowing that in SIP a successful call dialog means 200ok reply to an
> INVITE transaction, you can count it in the onreply_route[abc] that
> you arm for relayed transactions with t_on_reply("abc").
>
> Hope these help you,
> Daniel
>
>> Suggestion for the new counter is a name like:
>> "openserTotalNumSucceededDialogSetups". It has a counter32.
>> Description: "The total number of calls that succeeded"
>> I know that there are the counters openserCurNumDialogs,
>> openserCurNumDialogsInProgress and openserCurNumDialogsInSetup but
>> these are of Gauge type who only reflects the current situation.
>> These Gauge counters can't be used together with a Counter32 counter.
>> That don't mix. The calculation done for the counter
>> "openserCurNumDialogsInProgress" should be used where every new
>> dialog setup is added to the new suggested counter. A counter of 32
>> should cover a great deal of connections. These counters are usually
>> read, if used, every 15 minutes or 1 hour.
>> *Rationale:*
>> The reason for the new counter is that a calculation between
>> succeeded and failed dialog setups can be done and be used for SLA
>> agreements. Without this, its hard to make any customer versus
>> provider agreements.
>> /Stefan
>> PS. Ask if anything is unclear and I need an answer rapidly.
>>
>>
>> _______________________________________________
>> SIP Express Router (SER) and Kamailio (OpenSER) - sr-users mailing list
>> sr-users(a)lists.sip-router.org
>> http://lists.sip-router.org/cgi-bin/mailman/listinfo/sr-users
>
> --
> Daniel-Constantin Mierla
> http://www.asipto.com
--
Daniel-Constantin Mierla
http://www.asipto.com
Hello,
Is there anything special that needs to be done for float comparison?
For example:
if([5.5 >= 4.3]) ....
or
if(5.5 > 4.3) ....
The conditional does not seem to be coming back as true like it should?
This is simply an example... the precision in the actual case is different
(longer decimal places).
Thank you for all and any help in advance!
In 3.1.1 this worked just fine. In 3.1.3 it is giving me an error. I
am unsure what to check at this point for why it would be failing. I am
doing a kamailio -c to validate the config and not actually launching
the program but I do not think that should cause this.
modparam("app_lua", "register", "sqlops")
sqlops.so is loaded.
if I remove that modparam line the config validates, however the lua
script would fail because it uses sqlops.
modules.lst is the same for building.
While I do not think that it is lua specific, both are using
liblua5.1.0, one is Ubuntu 11.04 natty (where it fails) and the other is
Debian wheezy (where its working).
0(18226) WARNING: <core>
[sr_module.c:578]: /usr/local/kamailio/lib64/kamailio/modules/app_lua.so: exports dlflags interface is deprecated and it will notbe supported in newer versions; consider using mod_register() instead
0(18226) : <core> [cfg.y:3412]: parse error in config file kamailio.cfg,
line 262, column 41: Can't set module parameter
As a side note the "notbe supported ..." line is missing a space between
not and be and a newline at the end.
--
Trixter aka Bret McDanel
website: http://www.0xdecafbad.com
pgp key: http://bit.ly/9XYK4b
I need to rewrite the destination after I receive 302
I have this logic
Onreply
Loads in avp the information needed
I try sending to failure route and to a route in both cases the $ru become <null>
In the route and failureroute
I did try rewritehost, rewriteuri, $ru= number+ host
And append the route
But $ru is always null.
Inside the route or failure route
If there are no 302 nor the onreply involved everything works fine
Any suggestion to rewrite the ruri after a 302 is welcome
I am still using Kamailo1.4.3
Omar
On 18 April 2011 15:47, Henning Westerholt <henning.westerholt(a)1und1.de> wrote:
> On Monday 18 April 2011, Roman Yeryomin wrote:
>> coredump? easy :)
>> you can pick core file itself here (it's pretty heavy to send to the list):
>> http://83.99.159.113/core.kamailio.20110418-1331
>>
>> What do you mean by backtrace? log output or strace output?
>
> Hi Roman,
>
> he refers to a gdb backtrace, "gdb bt". More informations e.g. here:
> http://www.kamailio.org/dokuwiki/doku.php/troubleshooting:corefiles
>
ok, here is the backtrace:
# gdb kamailio core
GNU gdb 6.8-debian
Copyright (C) 2008 Free Software Foundation, Inc.
License GPLv3+: GNU GPL version 3 or later <http://gnu.org/licenses/gpl.html>
This is free software: you are free to change and redistribute it.
There is NO WARRANTY, to the extent permitted by law. Type "show copying"
and "show warranty" for details.
This GDB was configured as "i486-linux-gnu"...
warning: Can't read pathname for load map: Input/output error.
Reading symbols from /lib/tls/i686/cmov/libdl.so.2...done.
Loaded symbols for /lib/tls/i686/cmov/libdl.so.2
Reading symbols from /lib/tls/i686/cmov/libresolv.so.2...done.
Loaded symbols for /lib/tls/i686/cmov/libresolv.so.2
Reading symbols from /lib/tls/i686/cmov/libc.so.6...done.
Loaded symbols for /lib/tls/i686/cmov/libc.so.6
Reading symbols from /lib/ld-linux.so.2...done.
Loaded symbols for /lib/ld-linux.so.2
Reading symbols from /usr/local/lib/kamailio/modules_k/mi_fifo.so...done.
Loaded symbols for /usr/local/lib/kamailio/modules_k/mi_fifo.so
Reading symbols from /usr/local/lib/kamailio/libkmi.so.1...done.
Loaded symbols for /usr/local/lib/kamailio/libkmi.so.1
Reading symbols from /usr/local/lib/kamailio/modules_k/kex.so...done.
Loaded symbols for /usr/local/lib/kamailio/modules_k/kex.so
Reading symbols from /usr/local/lib/kamailio/libkcore.so.1...done.
Loaded symbols for /usr/local/lib/kamailio/libkcore.so.1
Reading symbols from /usr/local/lib/kamailio/modules/tm.so...done.
Loaded symbols for /usr/local/lib/kamailio/modules/tm.so
Reading symbols from /usr/local/lib/kamailio/modules_k/tmx.so...done.
Loaded symbols for /usr/local/lib/kamailio/modules_k/tmx.so
Reading symbols from /usr/local/lib/kamailio/modules/sl.so...done.
Loaded symbols for /usr/local/lib/kamailio/modules/sl.so
Reading symbols from /usr/local/lib/kamailio/modules_k/rr.so...done.
Loaded symbols for /usr/local/lib/kamailio/modules_k/rr.so
Reading symbols from /usr/local/lib/kamailio/modules_k/pv.so...done.
Loaded symbols for /usr/local/lib/kamailio/modules_k/pv.so
Reading symbols from /usr/local/lib/kamailio/modules_k/maxfwd.so...done.
Loaded symbols for /usr/local/lib/kamailio/modules_k/maxfwd.so
Reading symbols from /usr/local/lib/kamailio/modules_k/usrloc.so...done.
Loaded symbols for /usr/local/lib/kamailio/modules_k/usrloc.so
Reading symbols from /usr/local/lib/kamailio/libsrdb1.so.1...done.
Loaded symbols for /usr/local/lib/kamailio/libsrdb1.so.1
Reading symbols from /usr/local/lib/kamailio/modules_k/registrar.so...done.
Loaded symbols for /usr/local/lib/kamailio/modules_k/registrar.so
Reading symbols from /usr/local/lib/kamailio/modules_k/textops.so...done.
Loaded symbols for /usr/local/lib/kamailio/modules_k/textops.so
Reading symbols from /usr/local/lib/kamailio/modules_k/siputils.so...done.
Loaded symbols for /usr/local/lib/kamailio/modules_k/siputils.so
Reading symbols from /usr/local/lib/kamailio/modules_k/xlog.so...done.
Loaded symbols for /usr/local/lib/kamailio/modules_k/xlog.so
Reading symbols from /usr/local/lib/kamailio/modules/sanity.so...done.
Loaded symbols for /usr/local/lib/kamailio/modules/sanity.so
Reading symbols from /usr/local/lib/kamailio/modules/ctl.so...done.
Loaded symbols for /usr/local/lib/kamailio/modules/ctl.so
Reading symbols from /usr/local/lib/kamailio/modules/mi_rpc.so...done.
Loaded symbols for /usr/local/lib/kamailio/modules/mi_rpc.so
Reading symbols from /usr/local/lib/kamailio/modules_k/acc.so...done.
Loaded symbols for /usr/local/lib/kamailio/modules_k/acc.so
Reading symbols from /lib/tls/i686/cmov/libpthread.so.0...done.
Loaded symbols for /lib/tls/i686/cmov/libpthread.so.0
Reading symbols from /usr/local/lib/kamailio/modules_k/perl.so...done.
Loaded symbols for /usr/local/lib/kamailio/modules_k/perl.so
Reading symbols from /usr/lib/libperl.so.5.8...done.
Loaded symbols for /usr/lib/libperl.so.5.8
Reading symbols from /lib/tls/i686/cmov/libm.so.6...done.
Loaded symbols for /lib/tls/i686/cmov/libm.so.6
Reading symbols from /lib/tls/i686/cmov/libcrypt.so.1...done.
Loaded symbols for /lib/tls/i686/cmov/libcrypt.so.1
Reading symbols from /usr/local/lib/kamailio/modules_k/perlvdb.so...done.
Loaded symbols for /usr/local/lib/kamailio/modules_k/perlvdb.so
Reading symbols from /usr/local/lib/kamailio/modules/auth.so...done.
Loaded symbols for /usr/local/lib/kamailio/modules/auth.so
Reading symbols from /usr/local/lib/kamailio/modules_k/auth_db.so...done.
Loaded symbols for /usr/local/lib/kamailio/modules_k/auth_db.so
Reading symbols from /usr/local/lib/kamailio/modules/app_lua.so...done.
Loaded symbols for /usr/local/lib/kamailio/modules/app_lua.so
Reading symbols from /usr/lib/liblua5.1.so.0...done.
Loaded symbols for /usr/lib/liblua5.1.so.0
Reading symbols from /lib/tls/i686/cmov/libnss_files.so.2...done.
Loaded symbols for /lib/tls/i686/cmov/libnss_files.so.2
Reading symbols from /lib/tls/i686/cmov/libnss_dns.so.2...done.
Loaded symbols for /lib/tls/i686/cmov/libnss_dns.so.2
Core was generated by `kamailio -dddd'.
Program terminated with signal 11, Segmentation fault.
[New process 13773]
#0 0xb7228e3a in parseurl (url=0xb7213230 "T�0\b#") at perlvdbfunc.c:60
60 if (strlen(cn) > 0)
If I understand this correctly error refers to row 60 in perlvdbfunc.c
strlen expects const char* instead of char* ?
Regards,
Roman
Hello,
we should decide the roadmap to next major release v3.2.0, so probably
an IRC meeting for some real time chatting would be good. I am thinking
of June 3 or 4, 15:00GMT. Anyone interested in the meeting and available
in one of those dates? The date with most of devs available will be
selected.
Cheers,
Daniel
--
Daniel-Constantin Mierla -- http://www.asipto.comhttp://linkedin.com/in/miconda -- http://twitter.com/miconda
Hi, I'm having a problem with RTP traffic, I have softphone connecting from
the outside, I can register but Kamailio is sending all RTP traffic to the
private IP address that the softphone has in it own local network. How can I
fix this? Any help will be appreciated.
Lucas
I'm trying to get the pua_bla module to do its thing, and I'm running into an issue.
I'm getting these errors when the first NOTIFY comes from the phone:
ERROR: presence [publish.c:515]: Missing or unsupported event header field value
ERROR: presence [publish.c:518]: event=[dialog;sla]
I see the phone register and the subsequent SUBSCRIBE (both successful) from Kamailio, so this bit seems to be correct.
I'm loading what I think are all the necessary modules:
loadmodule "presence.so"
loadmodule "presence_xml.so"
loadmodule "pua.so"
loadmodule "pua_bla.so"
And I'm handling the NOTIFY as per the documentation (xlogs to see that in fact the script executes):
if(is_method("NOTIFY") && to_uri=~"bla_aor(a)domain.com") {
xlog("Matched bla_aor to_uri\n");
if(bla_handle_notify()) {
xlog("Handled NOTIFY\n");
t_reply("200", "OK");
}
}
I see the log entries from the above xlogs, so it certainly is executing this part of the script. Any ideas why I'm getting the errors? All ideas and/or assistance are greatly appreciated.
Thanks in advance,
- Brad
The contents of this e-mail are intended for the named addressee only. It contains information that may be confidential. Unless you are the named addressee or an authorized designee, you may not copy or use it, or disclose it to anyone else. If you received it in error please notify us immediately and then destroy it.