[kamailio/kamailio] Extend keepalive module documentation (#1082)

classic Classic list List threaded Threaded
7 messages Options
Reply | Threaded
Open this post in threaded view
|  
Report Content as Inappropriate

[kamailio/kamailio] Extend keepalive module documentation (#1082)

lazedo-2

The new keepalive module states that it "performs destinations monitoring either for itself, or on the behalf of other modules".

What does that mean?
What are the use cases and which problems does it solve?
Which mechanisms does it use (SIP, ICMP, others?)

Some examples would greatly help in the README to get some context on how to actually use this module.


You are receiving this because you are subscribed to this thread.
Reply to this email directly, view it on GitHub, or mute the thread.

<script type="application/json" data-scope="inboxmarkup">{"api_version":"1.0","publisher":{"api_key":"05dde50f1d1a384dd78767c55493e4bb","name":"GitHub"},"entity":{"external_key":"github/kamailio/kamailio","title":"kamailio/kamailio","subtitle":"GitHub repository","main_image_url":"https://cloud.githubusercontent.com/assets/143418/17495839/a5054eac-5d88-11e6-95fc-7290892c7bb5.png","avatar_image_url":"https://cloud.githubusercontent.com/assets/143418/15842166/7c72db34-2c0b-11e6-9aed-b52498112777.png","action":{"name":"Open in GitHub","url":"https://github.com/kamailio/kamailio"}},"updates":{"snippets":[{"icon":"DESCRIPTION","message":"Extend keepalive module documentation (#1082)"}],"action":{"name":"View Issue","url":"https://github.com/kamailio/kamailio/issues/1082"}}}</script>
_______________________________________________
Kamailio (SER) - Development Mailing List
[hidden email]
https://lists.kamailio.org/cgi-bin/mailman/listinfo/sr-dev
Reply | Threaded
Open this post in threaded view
|  
Report Content as Inappropriate

Re: [kamailio/kamailio] Extend keepalive module documentation (#1082)

lazedo-2

More information in docs is always good. Hopefully @gbour will add more there.

To answer quickly some of your questions based on my review:

  • it is SIP-based monitoring (keepalive pinging with OPTIONS, like dispatcher does)
  • PR #1066 enhanced drouting to use keepalive module for monitoring its gateways


You are receiving this because you are subscribed to this thread.
Reply to this email directly, view it on GitHub, or mute the thread.

<script type="application/json" data-scope="inboxmarkup">{"api_version":"1.0","publisher":{"api_key":"05dde50f1d1a384dd78767c55493e4bb","name":"GitHub"},"entity":{"external_key":"github/kamailio/kamailio","title":"kamailio/kamailio","subtitle":"GitHub repository","main_image_url":"https://cloud.githubusercontent.com/assets/143418/17495839/a5054eac-5d88-11e6-95fc-7290892c7bb5.png","avatar_image_url":"https://cloud.githubusercontent.com/assets/143418/15842166/7c72db34-2c0b-11e6-9aed-b52498112777.png","action":{"name":"Open in GitHub","url":"https://github.com/kamailio/kamailio"}},"updates":{"snippets":[{"icon":"PERSON","message":"@miconda in #1082: More information in docs is always good. Hopefully @gbour will add more there.\r\n\r\nTo answer quickly some of your questions based on my review:\r\n\r\n * it is SIP-based monitoring (keepalive pinging with OPTIONS, like dispatcher does)\r\n * PR #1066 enhanced drouting to use keepalive module for monitoring its gateways"}],"action":{"name":"View Issue","url":"https://github.com/kamailio/kamailio/issues/1082#issuecomment-296151955"}}}</script>
_______________________________________________
Kamailio (SER) - Development Mailing List
[hidden email]
https://lists.kamailio.org/cgi-bin/mailman/listinfo/sr-dev
Reply | Threaded
Open this post in threaded view
|  
Report Content as Inappropriate

[kamailio/kamailio] Extend keepalive module documentation (#1082)

Juha Heinanen
In reply to this post by lazedo-2
Andreas Granig writes:

> The new keepalive module states that it "performs destinations
> monitoring either for itself, or on the behalf of other modules".

Regarding "on behalf of other modules", I didn't find any API function
documentation in README file.

-- Juha

_______________________________________________
Kamailio (SER) - Development Mailing List
[hidden email]
https://lists.kamailio.org/cgi-bin/mailman/listinfo/sr-dev
Reply | Threaded
Open this post in threaded view
|  
Report Content as Inappropriate

Re: [kamailio/kamailio] Extend keepalive module documentation (#1082)

lazedo-2
In reply to this post by lazedo-2

Hi @agranig, @kamailio-sync @
First, the module is still young, so the documentation may be incomplete. I will improve it asap

Second, my primary idea when started this module was to implement the same "destinations probing" mechanism found in dispatcher module, both in drouting & carrierroute modules. So instead of directly patching those modules (and duplicating the same code), I regroup all probing features in keepalive module that also expose a set of APIs (to be documented) to register a destination and be notified of destination status change.
Following @miconda suggestions, it can also be used standalone

What does that mean?
So currently you can use it in 2 ways:

  • standalone: destinations to monitor are statically defined as module parameter then you can use is_alive() function or event route to react to destination state change
  • as "probing engine" for drouting module: by setting enable_keepalive drouting parameter, drouting destinations will be monitored by keepalive, and a call to do_routing() will ignore inactive destinations in the resultset.
    I will add examples to the documentation to make things clear, but you can already see a kamailio.cfg example for both case in this ml post: https://lists.kamailio.org/pipermail/sr-users/2017-March/096521.html

What are the use cases and which problems does it solve?

  • monitor remote trunks (allowing to take actions or trigger an alert when a destination is down)
  • ignore down destinations when routing a call

Which mechanisms does it use (SIP, ICMP, others?)
It is working the same way as dispatcher does, by regularly sending SIP OPTIONS to destinations

Hope I answered all your questions


You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub, or mute the thread.

<script type="application/json" data-scope="inboxmarkup">{"api_version":"1.0","publisher":{"api_key":"05dde50f1d1a384dd78767c55493e4bb","name":"GitHub"},"entity":{"external_key":"github/kamailio/kamailio","title":"kamailio/kamailio","subtitle":"GitHub repository","main_image_url":"https://cloud.githubusercontent.com/assets/143418/17495839/a5054eac-5d88-11e6-95fc-7290892c7bb5.png","avatar_image_url":"https://cloud.githubusercontent.com/assets/143418/15842166/7c72db34-2c0b-11e6-9aed-b52498112777.png","action":{"name":"Open in GitHub","url":"https://github.com/kamailio/kamailio"}},"updates":{"snippets":[{"icon":"PERSON","message":"@gbour in #1082: Hi @agranig, @kamailio-sync @\r\nFirst, the module is still young, so the documentation may be incomplete. I will improve it asap\r\n\r\nSecond, my primary idea when started this module was to implement the same \"destinations probing\" mechanism found in dispatcher module, both in drouting \u0026 carrierroute modules. So instead of directly patching those modules (and duplicating the same code), I regroup all probing features in *keepalive* module that also expose a set of APIs (to be documented) to register a destination and be notified of destination status change.\r\nFollowing @miconda suggestions, it can also be used standalone\r\n\r\n_What does that mean?_\r\nSo currently you can use it in 2 ways:\r\n- standalone: destinations to monitor are statically defined as module parameter then you can use is_alive() function or event route to react to destination state change\r\n- as \"probing engine\" for drouting module: by setting _enable_keepalive_ drouting parameter, drouting destinations will be monitored by keepalive, and a call to do_routing() will ignore inactive destinations in the resultset.\r\nI will add examples to the documentation to make things clear, but you can already see a kamailio.cfg example for both case in this ml post: https://lists.kamailio.org/pipermail/sr-users/2017-March/096521.html\r\n\r\n_What are the use cases and which problems does it solve?_\r\n- monitor remote trunks (allowing to take actions or trigger an alert when a destination is down)\r\n- ignore down destinations when routing a call\r\n\r\n_Which mechanisms does it use (SIP, ICMP, others?)_\r\nIt is working the same way as dispatcher does, by regularly sending SIP OPTIONS to destinations\r\n\r\nHope I answered all your questions "}],"action":{"name":"View Issue","url":"https://github.com/kamailio/kamailio/issues/1082#issuecomment-296810631"}}}</script>
_______________________________________________
Kamailio (SER) - Development Mailing List
[hidden email]
https://lists.kamailio.org/cgi-bin/mailman/listinfo/sr-dev
Reply | Threaded
Open this post in threaded view
|  
Report Content as Inappropriate

Re: [kamailio/kamailio] Extend keepalive module documentation (#1082)

lazedo-2
In reply to this post by lazedo-2

@juha-h - the inter-module/devel api are not required to be in the readme, there were some attempts in the past, but none really maintained. For example tm exports couple of dozens of functions, auth has also several exports, ...

Instead it would be good to have proper comments in the code for the functions exported for other modules. This is a recommendation, of course.


You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub, or mute the thread.

<script type="application/json" data-scope="inboxmarkup">{"api_version":"1.0","publisher":{"api_key":"05dde50f1d1a384dd78767c55493e4bb","name":"GitHub"},"entity":{"external_key":"github/kamailio/kamailio","title":"kamailio/kamailio","subtitle":"GitHub repository","main_image_url":"https://cloud.githubusercontent.com/assets/143418/17495839/a5054eac-5d88-11e6-95fc-7290892c7bb5.png","avatar_image_url":"https://cloud.githubusercontent.com/assets/143418/15842166/7c72db34-2c0b-11e6-9aed-b52498112777.png","action":{"name":"Open in GitHub","url":"https://github.com/kamailio/kamailio"}},"updates":{"snippets":[{"icon":"PERSON","message":"@miconda in #1082: @juha-h - the inter-module/devel api are not required to be in the readme, there were some attempts in the past, but none really maintained. For example tm exports couple of dozens of functions, auth has also several exports, ...\r\n\r\nInstead it would be good to have proper comments in the code for the functions exported for other modules. This is a recommendation, of course."}],"action":{"name":"View Issue","url":"https://github.com/kamailio/kamailio/issues/1082#issuecomment-296815235"}}}</script>
_______________________________________________
Kamailio (SER) - Development Mailing List
[hidden email]
https://lists.kamailio.org/cgi-bin/mailman/listinfo/sr-dev
Reply | Threaded
Open this post in threaded view
|  
Report Content as Inappropriate

Re: [kamailio/kamailio] Extend keepalive module documentation (#1082)

lazedo-2
In reply to this post by lazedo-2

I added some notes about the monitoring type in the readme, improvements are welcome. Closing this one.


You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub, or mute the thread.

<script type="application/json" data-scope="inboxmarkup">{"api_version":"1.0","publisher":{"api_key":"05dde50f1d1a384dd78767c55493e4bb","name":"GitHub"},"entity":{"external_key":"github/kamailio/kamailio","title":"kamailio/kamailio","subtitle":"GitHub repository","main_image_url":"https://cloud.githubusercontent.com/assets/143418/17495839/a5054eac-5d88-11e6-95fc-7290892c7bb5.png","avatar_image_url":"https://cloud.githubusercontent.com/assets/143418/15842166/7c72db34-2c0b-11e6-9aed-b52498112777.png","action":{"name":"Open in GitHub","url":"https://github.com/kamailio/kamailio"}},"updates":{"snippets":[{"icon":"PERSON","message":"@miconda in #1082: I added some notes about the monitoring type in the readme, improvements are welcome. Closing this one."}],"action":{"name":"View Issue","url":"https://github.com/kamailio/kamailio/issues/1082#issuecomment-308110351"}}}</script>
_______________________________________________
Kamailio (SER) - Development Mailing List
[hidden email]
https://lists.kamailio.org/cgi-bin/mailman/listinfo/sr-dev
Reply | Threaded
Open this post in threaded view
|  
Report Content as Inappropriate

Re: [kamailio/kamailio] Extend keepalive module documentation (#1082)

lazedo-2
In reply to this post by lazedo-2

Closed #1082.


You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub, or mute the thread.

<script type="application/json" data-scope="inboxmarkup">{"api_version":"1.0","publisher":{"api_key":"05dde50f1d1a384dd78767c55493e4bb","name":"GitHub"},"entity":{"external_key":"github/kamailio/kamailio","title":"kamailio/kamailio","subtitle":"GitHub repository","main_image_url":"https://cloud.githubusercontent.com/assets/143418/17495839/a5054eac-5d88-11e6-95fc-7290892c7bb5.png","avatar_image_url":"https://cloud.githubusercontent.com/assets/143418/15842166/7c72db34-2c0b-11e6-9aed-b52498112777.png","action":{"name":"Open in GitHub","url":"https://github.com/kamailio/kamailio"}},"updates":{"snippets":[{"icon":"DESCRIPTION","message":"Closed #1082."}],"action":{"name":"View Issue","url":"https://github.com/kamailio/kamailio/issues/1082#event-1121331792"}}}</script>
_______________________________________________
Kamailio (SER) - Development Mailing List
[hidden email]
https://lists.kamailio.org/cgi-bin/mailman/listinfo/sr-dev
Loading...