If you are working in the field of VoIP technologies, and somehow taking part in voice transmission projects with Cisco CUBE, you have experienced that you need to run debug commands on CUBE. In this article, you can find out how to filter the debug commands you run and avoid getting lost in the output.
It is possible to see hundreds of calls passing through the device if CUBE is used in places where voice traffic is high, such as large organizations and call centers. If you are investigating a specific problem, finding relevant messages between your debug outputs in bulk can save you a lot of time. In this case, you can direct the relevant debug commands according to the specific conditions you want to call and simplify your work by getting simpler printouts. To do this, you need to use a filtering feature on the CUBE.
You can use filtering for debug commands for many protocols, such as SIP, H.323, MGCP, and below are all CUBE debug commands that support this filtering:
debug cch323 h225 debug cch323 h245 debug cch323 preauth debug cch323 session debug ccsip all debug ccsip calls debug ccsip err debug ccsip events debug ccsip messages debug ccsip preauth debug ccsip states debug mgcp all debug mgcp endpoint debug mgcp endptdb debug mgcp errors debug mgcp events debug mgcp gcfm debug mgcp inout debug mgcp media debug mgcp src debug mgcp state debug mgcp voipcac debug voip aaa debug voip ccapi error debug voip ccapi inout debug voip ipipgw debug voip ivr all debug voip ivr applib debug voip ivr callsetup debug voip ivr digitcollect debug voip ivr dynamic debug voip ivr error debug voip ivr script debug voip ivr settlement debug voip ivr states debug voip ivr tclcommands debug voip rawmsg debug vtsp all debug vtsp dsp debug vtsp error debug vtsp event debug vtsp port debug vtsp rtp debug vtsp send-nse debug vtsp session debug vtsp stats debug vtsp vofr subframe debug vtsp tone debug vtsp vofr
Call Filter Configuration
To filter a voice call, you must first create a match-list containing the conditions to be filtered. You can define different conditions when creating this list. You can also find the conditions and their details below:
enable configure terminal call filter match-list number voice incoming calling-number string - Filter according to incoming calling number. incoming called-number string - Filter according to incoming called number. incoming signaling {local | remote} ipv4 ip-address - Filter according to incoming signalling IP address. incoming media {local | remote} ipv4 ip-address - Filter according to incoming media IP address. incoming dialpeer tag - Filter according to incoming dial peer. outgoing calling-number string - Filter according to outgoing calling number. outgoing called-number string - Filter according to outgoing called number. outgoing signaling {local | remote} ipv4 ip-address - Filter according to outgoing signalling IP address. outgoing media {local | remote} ipv4 ip-address - Filter according to incoming media IP address. outgoing dialpeer tag - Filter according to outgoing dial peer. end
You can use the show call filter match-list command to review this list later.
Example:
For example, we want to see all SIP messages in a SIP call from 03125551234 to 03125554567. In this case, we can write the filter as follows:
call filter match-list 1 voice incoming calling-number 03125551234 incoming called-number 03125554567
The number we give to the match-list is used like an access list. Now activate this filter and open debug:
Router# debug condition match-list 1 exact-match Router# debug ccsip messages
The number 1 here is the number of the list we have defined above and can range from 1 to 16. The exact match that we write at the end indicates that all of the conditions are met. To check if the filter is applied, simply show the show debug:
Router# show debug CCSIP SPI:SIP Call Message tracing is enabled (filter is ON)
As you can see from the output, our debug outputs will pass through the filter and show us the messages of the call we are only interested in (calls to call 03125551234).