Kamailio server provides the command line utility, usable for controlling server operations. One of such usage of the kamctl utility is monitoring the Kamailio server status. But in default Kamailio server configuration, the kamctl is returning following message indicatiing problem with FIFO used for kamctl communication with kamailio server
pstest:/home/palo# kamctl moni database engine 'MYSQL' loaded Control engine 'FIFO' loaded ERROR: Error opening Kamailio's FIFO FIFO ERROR: Make sure you have the line 'modparam("mi_fifo", "fifo_name", "FIFO")' in your config ERROR: and also have loaded the mi_fifo module.
The solutions is:
- Check if the mi_fifo.so module is loaded, default is yes.
loadmodule "mi_fifo.so"
- Check if the mi_fifo module is configrued with correct parameters, default is
modparam("mi_fifo", "fifo_name", "/tmp/kamailio_fifo")
- Check the /etc/kamailio/kamctlrc fileif there is correctly setted up the OSER_FIFO line. It should point to the /tmp/kamailio_fifo file
OSER_FIFO="/tmp/kamailio_fifo"
- Now should kamctl moni work
pstest:/home/palo# kamctl moni [cycle #: 1; if constant make sure server lives] Server:: kamailio (3.1.0 (x86_64/linux)) Build:: mi_core.c compiled on 21:14:27 Oct 6 2010 with gcc 4.3.2 Flags:: STATS: Off, USE_IPV6, USE_TCP, USE_TLS, TLS_HOOKS, USE_RAW_SOCKS, DISABLE_NAGLE, USE_MCAST, DNS_IP_HACK, SHM_MEM, SHM_MMAP, PKG_MALLOC, DBG_QM_MALLOC, USE_FUTEX, FAST_LOCK-ADAPTIVE_WAIT, USE_DNS_CACHE, USE_DNS_FAILOVER, USE_NAPTR, USE_DST_BLACKLIST, HAVE_RESOLV_RES GIT:: Now:: Thu Nov 18 14:37:15 2010 Up since:: Thu Nov 18 14:31:31 2010 Up time:: 344 [sec] Transaction Statistics: tmx:UAS_transactions = 140733193388032 tmx:UAC_transactions = 140733193388032 tmx:inuse_transactions = 140733193388032 Stateless Server Statistics: sl:sent_replies = 140733193388032 sl:sent_err_replies = 140733193388032 sl:received_ACKs = 140733193388032 UsrLoc Stats: usrloc:location-contacts = 0 usrloc:location-expires = 0 usrloc:location-users = 0 usrloc:registered_users = 0