The MGCP Call Centric Debug feature enables the filtering of debug output based on selected criteria and this feature also standardizes the format of the MGCP debug header. By sharing a common header format all MGCP debug information for a single call can be identified and correlated across the various layers in Cisco IOS software. Filtering debug output reduces extraneous information displayed on the console port, making it easier to locate the correct information and reducing the impact to platform performance, while mitigating lost data because of buffer limits.

The MGCP Call Centric Debug feature enables the filtering of debug output based on selected criteria and this feature also standardizes the format of the MGCP debug header. By sharing a common header format all MGCP debug information for a single call can be identified and correlated across the various layers in Cisco IOS software. Filtering debug output reduces extraneous information displayed on the console port, making it easier to locate the correct information and reducing the impact to platform performance, while mitigating lost data because of buffer limits.

Revision as of 23:38, 17 December 2009

The MGCP Call Centric Debug feature enables the filtering of debug output based on selected criteria and this feature also standardizes the format of the MGCP debug header. By sharing a common header format all MGCP debug information for a single call can be identified and correlated across the various layers in Cisco IOS software. Filtering debug output reduces extraneous information displayed on the console port, making it easier to locate the correct information and reducing the impact to platform performance, while mitigating lost data because of buffer limits.

Match Conditions for MGCP Debug Filtering

To filter calls, you must first define a list of conditions on which to match. The attributes associated with a call are compared to the configured list of match conditions. Debug output that matches all or some of the conditions in the list is displayed, depending on whether the match criteria is set to either exact or partial match.

The MGCP Call Centric Debug feature supports filtering based on the following conditions:

Trace Levels for MGCP Debug Output

The MGCP Call Centric Debug feature introduces trace levels for MGCP debug output. Trace levels allow you to control the amount of information that is displayed by debug commands based on the importance of the content. Trace levels are associated with priority levels that categorize MGCP debug output depending on the information it contains. The output for each debug command is categorized within three priority levels: high, medium, and low.

The following trace levels can be selected to indicate the priority of the information that is displayed:

Critical-Displays only MGCP debug information marked as high priority.

Moderate-Displays MGCP debug information marked as medium or high priority.

Verbose-Displays all MGCP debug information. This is the default level.

Note:

The debug mgcp errors and debug mgcp packets commands do not support trace levels. Their debug output is set to the highest priority and is displayed for all trace level values.

You can set the desired trace level for an MGCP debug session by using the tracelevel keyword in individual MGCP debug commands or by setting a global trace level using the debug mgcp tracelevel-default command.

Note:

Setting the trace level for an endpoint using the mgcp debug endpoint command is independent of the global trace level. The endpoint level takes precedence over the global level. For example, the debug mgcp event tracelevel moderate command used with the debug mgcp endpoint aaln/S2/SU0/0 event tracelevel verbose command sets the trace level to verbose for that specific endpoint while all of the other endpoints have event debugs set at a moderate level. If the global debug is disabled, the per-endpoint debug remains enabled and vice versa.

Tips on Collecting Debug Output

Logging debug output to the console has disadvantages such as being slower and dropping data more easily than logging to a buffer. Collecting debug information by logging output to a buffer instead of the console reduces the impact to gateway performance and decreases the incidence of dropped data.

To log debug output to a buffer instead of the console, use the no logging console and logging buffered commands. These commands can only be used, however, if there is enough memory available on the gateway to create a large enough buffer to collect the debug output. To display debug output that was collected and sent to the configured buffer, use the show logging command.

Logging debug output to the console may also consume an excessive amount of CPU resources if the logging console guaranteed command is enabled, which is the default setting. It is recommended that you disable this functionality by using the no logging console guaranteed command when sending debug output to the console.

You may also want to use the service timestamps debug and service timestamps log commands to control how the timestamps are displayed in the debug output.

number-Numeric label that uniquely identifies the match list. Range is 1 to 16. This number is set using the call filter match-list command.

exact-match-All related debug output is filtered until all conditions in the match list are explicitly met. This is the best choice for most situations because the output is the most concise.

partial-match-No related debug output is filtered until there is a single explicit match failure. As long as zero or more conditions are met, debug output is not filtered. This choice is useful in debugging call startup problems like digit collection, but is not ideal for many situations because a large amount of debug output is generated before matches explicitly fail.

Note:

This command impacts all enabled debug commands that support call filtering.

See the Cisco IOS Debug Command Reference for detailed descriptions of these debug commands.

Note:

When enabling MGCP debug commands, you can also set a trace level to further filter output based on the importance of the information. For information, see the Enabling MGCP Debug Trace Levels.

Verifying the MGCP Debug Filtering Configuration

To verify debug filtering conditions, use the following commands:

show debug-Displays the debugs that are enabled.

show call filter components-Displays the components that register internally with the filtering module. This command shows which components are registered with the GCFM, which is the internal module that controls which components are filtered.

show call filter match-list-Displays the criteria set for the specified match list. It shows a list of all the match lists, shows which ones are enabled, and shows whether they are enabled for partial or exact matching.