This page describes how to use the AppDynamics Query Language (ADQL) to search analytics data using Advanced mode in the Analytics Search panel. If you have never used AppDynamics Analytics, you might want to start with basic mode before using Advanced mode for your searches.

Access Advanced mode by clicking Add+ on the Analytics Search page. Select Query Language Search:

Construct ADQL Queries

Each ADQL event query begins with a SELECT statement that uses a FROM clause. Use the FROM clause to specify the data source you want to query. You can query one data source in each query. 

Use the SELECT statement to further qualify the query using field_expressions and math_expressions. The WHERE clause adds conditions. For more details on specific ADQL syntax, keywords, functions, and operators, see the ADQL Reference.

When you click Search for queries other than select all fields (SELECT *), the results display on the visualization tab where the table widget accurately renders your query.

Use ADQL Auto-Complete 

As you construct your query and type a space after a keyword, auto-complete offers suggestions for the next keyword or operator in the query. The display of auto-complete suggestions is based on the stage of your query and the event type you selected.  Auto-complete offers suggestions for data values, such as event types and fields, when you type an equals sign "="  or other comparison operator after the event type name.

Note: The query box in the data tab is used only for adding WHERE clause differentiation. Aggregation functions are only available in the visualization tab under the table widget.

In advanced mode, when you type SELECTthe fields from the last specified event type display in the auto-complete list. Fields specific to a new event type display after you complete the FROM clause.

Remember to type a space in front of the next keyword or you may see a validation error when executing the search or the search will be inexecutable.

Field Name Mapping

The field names in the auto-complete dropdown list correspond to UI labels and are obvious in most cases with minor differences in capitalization. When the field names have prepended database-related information, such as segments.errorList.errorType for Error Type or segments.httpData for HTTP data fields, they refer to data for individual segments of the transaction as it progresses from tier to tier. The segments fields do not represent data that refers to the overall business transaction instance. See ADQL Data for a list of fields, UI labels,  and internal database names for each data source.