# NetConnection Debugger

The NetConnection Debugger (NCD) provides Flash MX developers with a tool to report and diagnose processing and communication problems between the Flash client, Flash Remoting, and supported application servers.

Using the NCD and the NetDebug functions, you can trace events that span the creation of ActionScript NetConnection objects to dispatch, execute, and respond to remote Flash services and applications.

To use the NetConnection Debugger, you must insert the `include` command in the ActionScript at the frame level. The following include command imports the NetDebug ActionScript file:

    #include "NetDebug.as"

## NetConnection Debugger user interface

The NCD user interface (UI) contains the event display and provides access to the Display and Configuration menus. To customize the NCD, use the Filters menu and the Preferences menu.

The following figure shows the NCD UI:

The following table describes the principal NCD UI elements:

Element | Description
--- | ---
Debug Events panel | The Debug Events panel shows individual debug events. Each debug event contains the following information: An icon that represents the debug event source Debug event type name Summary field value When you select an item, a color-coded text tree, which represents the selected debug event, appears in the Debug Events Details window.
Summary panel | The Summary panels shows a shortened version of the debugging information presented in the Details panel.
Details panel | The Details panel shows the debugging information associated with a particular debug event. When you select a debug event from the Debug Events list box, a color-coded text tree appears in the Debug Events Details window. The following colors and information are supported: Red – Property names Blue – Property objects Black – Property values Property values use punctuation marks to convey data types. The following data types are supported: Strings – Double quotation marks ("string") Numbers – No special formatting Numbered arrays – Brackets around array indexes (array[1]) Other types – String representation followed by type name in italicized parentheses, such as `true (boolean)`. To adjust the level of detail displayed in the NCD, select Expert or Normal diplay mode in the Preferences menu.

### Filters menu

The Filters menu lets you filter the debugging events by any debug event field. The following figure shows the Filters menu:

The following table describes the principle elements of the Filters menu:

Element | Description
--- | ---
Field menu | The field menu lets you select or type the name of the field to filter.
Operator menu | The operator menu lets you select the comparison criteria that must be met for an event to appear in the Debug Events list box. The `contains` operator only works with strings, and specifies that the event field must compare the value as a substring.
Value text box | The value text box lets you enter a value to compare using the selected operator. Only events meeting the criteria specified by the filter, operator, and value boxes appear in the Debug Events list box.
Subscribed Events panel | To adjust what debug events are reported to the NCD, you select and clear check boxes next to the event type. Setting changes take effect as new debug events arrive.

### Preferences Menu

The Preferences menu lets you set the subscribed debug events, select various NCD display options, and select NetDebug performance limiters. The following figure shows the Preferences menu:

The following table describes the principle elements of the Preferences menu:

Element | Description
--- | ---
Event Memory | The Event Memory settings control the number of total events that the NCD stores in memory. To discard stored events as new events arrive, adjust the increment rate for the NCD. Total specifies the maximum number of events stored in memory. Remove specifies how many events to remove when the total number of events in memory has been exceeded. If you experience NCD performance problems, you can adjust these settings.
Request Limits | The Request Limit settings control the maximum number of events that display from an application server per transaction and the maximum number of array elements per nested array from a application server. To see more debug events or if you are experiencing NCD performance problems, you can adjust these settings.